priority_queue Class
Třída adaptéru kontejneru šablonu, která poskytuje omezení funkčnosti omezení přístupu k prvek některé základní typ kontejneru, který je vždy největší nebo nejvyšší prioritu.Nové prvky lze přidat priority_queue a priority_queue prvek může inspekce nebo odstranit.
template <
class Type,
class Container=vector<Type>,
class Compare=less<typename Container::value_type>
>
class priority_queue
Parametry
Typ
Typ datového prvku uložena v priority_queue.Container
Typ základní kontejner slouží k implementaci priority_queue.Compare
Typ, který poskytuje funkce objektu, který můžete porovnat dvě hodnoty prvku jako klíče řazení určit jejich relativní pořadí priority_queue.Tento argument je nepovinný a binárního predikátu méně*<typename kontejner*:: value_type***>* je výchozí hodnota.
Poznámky
Prvky třídy typu v šabloně první parametr objektu fronty jsou totožná s value_type a musí odpovídat typu prvek ve třídě základní kontejner kontejneru stanoveno druhý parametr šablony.Typu musí být Přiřaditelné, takže je možné kopírovat objekty tohoto typu a přiřadit hodnoty proměnné tohoto typu.
Sekvence ovládá pomocí volání uložené funkce objektu třídy objednávky priority_queue znaky.Obecně třeba pouze menší než srovnatelné zavést toto pořadí prvků: aby uvedeny jakékoli dva prvky, ji může stanovit nebo že jsou rovnocenné (v tom smyslu, že ani menší než ostatní), jeden je menší než ostatní.Výsledkem objednání mezi nonequivalent prvky.Na další technické poznámky je funkce porovnání binárního predikátu, indukuje přísné slabé řazení v standardní matematickém smyslu.
Zahrnout vhodné základní třídy kontejner pro priority_queue deque třídy a výchozí Třída vector nebo jiných podporující operací v kontejneru sekvence front, push_back, a pop_back a iterace náhodný přístup.Základní třída kontejneru je zapouzdřený v kontejneru adaptér, který poskytuje pouze omezenou sadu funkcí členů kontejneru posloupnost jako veřejné rozhraní.
Prvky pro přidání a odebrání prvků z priority_queue mají logaritmické složitosti.Prvky v přístupu priority_queue má konstantní složitosti.
Existují tři typy definované STL adaptéry kontejneru: zásobník, fronta a priority_queue.Každý omezuje funkčnost některých základní třída kontejneru poskytnout přesně řízené rozhraní standardní datové struktury.
Třídy zásobníku podporuje poslední v (LIFO) budou datovou strukturu.Dobré analogových mějte by zásobníku desek.Prvky (tabulky) může vložit, kontrolovat nebo odebrat pouze z horní části zásobníku, který je poslední prvek na konci základní kontejner.Omezení přístupu pouze prvek je důvodem pro použití třídy zásobníku.
Třída fronty je budou struktura dat podporuje.Dobré analogových mějte by lidé zarovnání pro bankovní zavázána.Prvky (osoby) mohou být přidány k zadní straně řádku a jsou odstraněny z přední části řádku.Přední a zadní řádek může být prohlédnuty.Omezení přístupu pouze přední a zadní prvky tímto způsobem je důvodem pro použití třídy fronty.
Třída priority_queue objednávky prvky tak, aby největší prvek je vždy na nejvyšší pozici.Podporuje vkládání prvek a kontroly a odstraňování prvek.Dobré analogových mějte by lidé zarovnání, kde jsou uspořádány podle věku, výšku nebo jiné kritérium.
Konstruktory
Konstrukce priority_queue je prázdný, nebo že je kopie rozsah základní kontejner objektu nebo jiných priority_queue. |
Funkce TypeDef
Typ, který poskytuje základní kontejner se upraví priority_queue. |
|
Celé číslo bez znaménka typu, která představuje počet prvků priority_queue. |
|
Typ, který představuje typ objektu, které jsou uloženy jako prvek priority_queue. |
Funkce členů
Pokud testy priority_queue je prázdný. |
|
Odebere největší prvek priority_queue z horní pozice. |
|
Přidá prvek prioritní fronty na základě priority prvku z operátor <. |
|
Vrátí počet prvků priority_queue. |
|
Vrátí odkaz const největší prvek v horní části priority_queue. |
Požadavky
Záhlaví: <queue>
Obor názvů: std