kennen:lib:next_permutation
Inhaltsverzeichnis
next_permutation()
#include <algorithm>
bool next_permutation (Bi first, Bi last) bool next_permutation (Bi first, Bi last, Binary comp) [last,B] = ranges::next_permutation (Range r, Binary comp = {}, Proj proj = {}) [last,B] = ranges::next_permutation (Bi first, Bi last, Binary comp = {}, Proj proj = {})
Erzeugt die nächste Permutation des Bereiches [first,last). Die Menge aller Permutationen 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 dabei die niedrigste Permutation,
eine aufsteigend geordnete Folge, ist das Ergebnis false.
Siehe auch
Beispiel
- next_permutation.cpp
#include <algorithm> #include <iostream> #include <string> int main() { std::string s = "Hallo"; // niedrigste Permutation do { std::cout << s << '\n'; // aufsteigend ausgeben } while (std::next_permutation(begin(s), end(s))); }
kennen/lib/next_permutation.txt · Zuletzt geändert: von rrichter
