namespace cpp {}

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:lib:prev_permutation

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: 2023-10-14 12:16 von rrichter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki