kennen:lib:prev_permutation
Inhaltsverzeichnis
prev_permutation()
#include <algorithm>
bool prev_permutation (Bi first, Bi last) bool prev_permutation (Bi first, Bi last, binary comp) [last,B] = ranges::prev_permutation (Range r, Binary comp = {}, Proj proj = {}) [last,B] = ranges::prev_permutation (Bi first, Bi last, Binary comp = {}, Proj proj = {})
Erzeugt die vorhergehende Permutation des Bereiches [first,last). Die Menge aller Permutationen eines Bereiches ist lexikographisch aufsteigend geordnet.
Parameter
first | Anfang des Bereiches |
last | Ende des Bereiches |
comp | Vergleichskriterium (Vorgabe = less) |
proj | einstelliger Funktor (Vorgabe = std::identity) |
Ergebnis
Rückgabewert: Boolescher Wert B bzw. {last,B}
als Struktur mit Elementen namens in, found
mit
true, wenn die neue Anordnung wieder ungeordnet ist.
Entsteht die höchste Permutation,
eine absteigend geordnete Folge, ist das Ergebnis false.
Siehe auch
Beispiel
- prev_permutation.cpp
#include <algorithm> #include <iostream> #inlcude <string> int main() { std::string s = "Hallo"; // niedrigste Permutation std::prev_permutation(begin(s), end(s)); // hoechste Permutation do { std::cout << s << '\n'; // absteigend ausgeben } while (std::prev_permutation(begin(s), end(s))); }
kennen/lib/prev_permutation.txt · Zuletzt geändert: von rrichter
