PriorityQueue<TElement,TPriority> Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Representa uma coleção de itens que têm um valor e uma prioridade. Na retirada da fila, o item com o valor de prioridade mais baixo é removido.
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)
Parâmetros de Tipo Genérico
- TElement
Especifica o tipo de elementos na fila.
- TPriority
Especifica o tipo de prioridade associada aos elementos enfileirados.
- Herança
-
PriorityQueue<TElement,TPriority>
Observações
Implementa um min-heap quaternário com array-backs. Cada elemento é enfileirado com uma prioridade associada que determina a ordem de retirada da fila. Os elementos com a prioridade mais baixa são retirados da fila primeiro. Note-se que o tipo não garante a semântica de primeiro a entrar, primeiro a sair para elementos de igual prioridade.
Construtores
| Name | Description |
|---|---|
| PriorityQueue<TElement,TPriority>() |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe. |
| PriorityQueue<TElement,TPriority>(IComparer<TPriority>) |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe com o comparador de prioridade personalizado especificado. |
| PriorityQueue<TElement,TPriority>(IEnumerable<ValueTuple<TElement,TPriority>>, IComparer<TPriority>) |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe que é preenchida com os elementos e prioridades especificados, bem como com o comparador de prioridades personalizado especificado. |
| PriorityQueue<TElement,TPriority>(IEnumerable<ValueTuple<TElement,TPriority>>) |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe que é preenchida com os elementos e prioridades especificados. |
| PriorityQueue<TElement,TPriority>(Int32, IComparer<TPriority>) |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe com a capacidade inicial especificada e o comparador de prioridades personalizados. |
| PriorityQueue<TElement,TPriority>(Int32) |
Inicializa uma nova instância da PriorityQueue<TElement,TPriority> classe com a capacidade inicial especificada. |
Propriedades
| Name | Description |
|---|---|
| Capacity |
Obtém o número total de elementos que o armazenamento de backup da fila pode conter sem redimensionar. |
| Comparer |
Obtém o comparador de prioridade usado pelo PriorityQueue<TElement,TPriority>. |
| Count |
Obtém o número de elementos contidos no PriorityQueue<TElement,TPriority>. |
| UnorderedItems |
Obtém uma coleção que enumera os elementos da fila de forma não ordenada. |
Métodos
| Name | Description |
|---|---|
| Clear() |
Remove todos os itens do PriorityQueue<TElement,TPriority>. |
| Dequeue() |
Remove e devolve o elemento mínimo do PriorityQueue<TElement,TPriority> - ou seja, o elemento com o valor de prioridade mais baixo. |
| DequeueEnqueue(TElement, TPriority) |
Remove o elemento mínimo e depois adiciona imediatamente o elemento especificado com prioridade associada ao PriorityQueue<TElement,TPriority>. |
| Enqueue(TElement, TPriority) |
Adiciona o elemento especificado com prioridade associada ao PriorityQueue<TElement,TPriority>. |
| EnqueueDequeue(TElement, TPriority) |
Adiciona o elemento especificado com prioridade associada ao PriorityQueue<TElement,TPriority>, e remove imediatamente o elemento minimal, devolvendo o resultado. |
| EnqueueRange(IEnumerable<TElement>, TPriority) |
Enfileira uma sequência de pares de elementos ao PriorityQueue<TElement,TPriority>, todos associados à prioridade especificada. |
| EnqueueRange(IEnumerable<ValueTuple<TElement,TPriority>>) |
Enfileira uma sequência de pares de prioridade elemental ao PriorityQueue<TElement,TPriority>. |
| EnsureCapacity(Int32) |
Garante que o PriorityQueue<TElement,TPriority> suporte |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| Peek() |
Devolve o elemento mínimo do PriorityQueue<TElement,TPriority> sem o remover. |
| Remove(TElement, TElement, TPriority, IEqualityComparer<TElement>) |
Remove a primeira ocorrência que é igual ao parâmetro especificado. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TrimExcess() |
Define a capacidade para o número real de itens no PriorityQueue<TElement,TPriority>, se for inferior a 90 por cento da capacidade atual. |
| TryDequeue(TElement, TPriority) |
Remove o elemento mínimo do PriorityQueue<TElement,TPriority>, e copia-o e a sua prioridade associada para os |
| TryPeek(TElement, TPriority) |
Devolve um valor que indica se existe um elemento mínimo no PriorityQueue<TElement,TPriority>, e se estiver presente, copia-o e a sua prioridade associada para os |