Ich verwende oft Standardfunktion in cpp
sort(A.begin(),A.end(),mycmp)
Verwendung von Vergleichsoperator im Gegenzug
wo
bool mycmp(int a, int b)
return (a>b);
den Vektor A zu sortieren Wenn aber die Frage ist dann Sortierung maßgeschneiderte fragt oft ich scheine verwirrt und viele Versuche, meine Vergleichsfunktion zu beheben. Kann jemand erklären, was genau return (a>b);
bedeutet; Ich lese auch einige Beiträge, kann aber immer noch nicht herausfinden, wie a> b die Reihenfolge zum Absteigen bestimmt.
Beiträge: configure the compare function to work with std::sort
Dank @delta. in Ihrer Antwort können Sie klarstellen, dass welcher Wert von der Dec-Funktion zurückgegeben wird, wenn lt (a [j + 1], a [j]) die richtige ist? Ist es 1? und wenn ja, hilft es, die Reihenfolge zu verringern. – mouse
@mouse ist es 'ture' oder' false' nach Typ Unterschrift. Mit 'sort' müssen Sie definieren, wie die Menge sortiert ist. Wenn Sie keine Menge angeben, wird standardmäßig '<' verwendet. 'cmp' ist nur eine Funktion zum Definieren von' <'. In 'sort' erscheint das Element' x' vor 'y' wenn' lt (x, y) '' true' ist. Ich denke, Sie können etwas diskrete Mathematik lesen, es wird helfen. – delta