PriorityQueue<TElement,TPriority> Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje kolekcję elementów, które mają wartość i priorytet. W przypadku dequeue element o najniższym priorytecie jest usuwany.
generic <typename TElement, typename TPriority>
public ref class PriorityQueue
public class PriorityQueue<TElement,TPriority>
type PriorityQueue<'Element, 'Priority> = class
Public Class PriorityQueue(Of TElement, TPriority)
Parametry typu
- TElement
Określa typ elementów w kolejce.
- TPriority
Określa typ priorytetu skojarzonego z elementami w kolejce.
- Dziedziczenie
-
PriorityQueue<TElement,TPriority>
Uwagi
Implementuje stos typu min-heap oparty na tablicy. Każdy element jest w kolejce ze skojarzonym priorytetem, który określa kolejność dequeue. Elementy o najniższym priorytcie są najpierw odsyłane. Należy pamiętać, że typ nie gwarantuje semantyki pierwszego w pierwszym na wyjęcie dla elementów o równym prioryfikcie.
Konstruktory
Właściwości
Comparer |
Pobiera porównanie priorytetów używane przez PriorityQueue<TElement,TPriority>. |
Count |
Pobiera liczbę elementów zawartych w PriorityQueue<TElement,TPriority>. |
UnorderedItems |
Pobiera kolekcję, która wylicza elementy kolejki w sposób nieurządkowany. |
Metody
Clear() |
Usuwa wszystkie elementy z PriorityQueue<TElement,TPriority>. |
Dequeue() |
Usuwa i zwraca minimalny element z PriorityQueue<TElement,TPriority> — czyli element o najniższej wartości priorytetu. |
DequeueEnqueue(TElement, TPriority) |
Usuwa minimalny element, a następnie natychmiast dodaje określony element ze skojarzonym priorytetem do PriorityQueue<TElement,TPriority>. |
Enqueue(TElement, TPriority) |
Dodaje określony element ze skojarzonym priorytetem do PriorityQueue<TElement,TPriority>. |
EnqueueDequeue(TElement, TPriority) |
Dodaje określony element ze skojarzonym priorytetem do PriorityQueue<TElement,TPriority>, a natychmiast usuwa minimalny element, zwracając wynik. |
EnqueueRange(IEnumerable<TElement>, TPriority) |
Kolejkuje sekwencję par elementów do PriorityQueue<TElement,TPriority>, wszystkie skojarzone z określonym priorytetem. |
EnqueueRange(IEnumerable<ValueTuple<TElement,TPriority>>) |
Kolejkuje sekwencję par priorytetu elementu do PriorityQueue<TElement,TPriority>. |
EnsureCapacity(Int32) |
Gwarantuje, że PriorityQueue<TElement,TPriority> może pomieścić do |
Equals(Object) |
Określa, czy określony obiekt jest równy bieżącemu obiektowi. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Pobiera Type bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Object. (Odziedziczone po Object) |
Peek() |
Zwraca minimalny element z PriorityQueue<TElement,TPriority> bez jego usuwania. |
Remove(TElement, TElement, TPriority, IEqualityComparer<TElement>) |
Usuwa pierwsze wystąpienie, które jest równe określonemu parametrowi. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
TrimExcess() |
Ustawia pojemność na rzeczywistą liczbę elementów w PriorityQueue<TElement,TPriority>, jeśli jest to mniej niż 90 procent bieżącej pojemności. |
TryDequeue(TElement, TPriority) |
Usuwa minimalny element z PriorityQueue<TElement,TPriority>i kopiuje go oraz skojarzony z nim priorytet do argumentów |
TryPeek(TElement, TPriority) |
Zwraca wartość wskazującą, czy w PriorityQueue<TElement,TPriority>istnieje minimalny element, a jeśli istnieje, kopiuje go i skojarzony priorytet do argumentów |