Partilhar via


PriorityQueue<TElement,TPriority> Classe

Definição

Representa uma coleção de itens que têm um valor e uma prioridade. Na dequeue, 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

TElement

Especifica o tipo de elementos na fila.

TPriority

Especifica o tipo de prioridade associado a elementos enfileirados.

Herança
PriorityQueue<TElement,TPriority>

Comentários

Implementa um heap mínimo quaternário com suporte de matriz. Cada elemento é enfileirado com uma prioridade associada que determina a ordem de dequeue. Os elementos com a prioridade mais baixa são dequeu primeiro. Observe que o tipo não garante semântica first-in-first-out para elementos de prioridade igual.

Construtores

PriorityQueue<TElement,TPriority>()

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority>.

PriorityQueue<TElement,TPriority>(IComparer<TPriority>)

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority> com o comparador de prioridade personalizado especificado.

PriorityQueue<TElement,TPriority>(IEnumerable<ValueTuple<TElement,TPriority>>)

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority> que é preenchida com os elementos e prioridades especificados.

PriorityQueue<TElement,TPriority>(IEnumerable<ValueTuple<TElement,TPriority>>, IComparer<TPriority>)

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority> que é preenchida com os elementos e prioridades especificados e com o comparador de prioridade personalizado especificado.

PriorityQueue<TElement,TPriority>(Int32)

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority> com a capacidade inicial especificada.

PriorityQueue<TElement,TPriority>(Int32, IComparer<TPriority>)

Inicializa uma nova instância da classe PriorityQueue<TElement,TPriority> com a capacidade inicial especificada e o comparador de prioridade personalizada.

Propriedades

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 maneira não ordenada.

Métodos

Clear()

Remove todos os itens do PriorityQueue<TElement,TPriority>.

Dequeue()

Remove e retorna o elemento mínimo do PriorityQueue<TElement,TPriority> , ou seja, o elemento com o menor valor de prioridade.

DequeueEnqueue(TElement, TPriority)

Remove o elemento mínimo e, em seguida, 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 mínimo, retornando o resultado.

EnqueueRange(IEnumerable<TElement>, TPriority)

Enfileira uma sequência de pares de elementos à PriorityQueue<TElement,TPriority>, tudo associado à prioridade especificada.

EnqueueRange(IEnumerable<ValueTuple<TElement,TPriority>>)

Enfileira uma sequência de pares de prioridade de elemento para o PriorityQueue<TElement,TPriority>.

EnsureCapacity(Int32)

Garante que o PriorityQueue<TElement,TPriority> possa manter até capacity itens sem expansão adicional do armazenamento de suporte.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
Peek()

Retorna o elemento mínimo do PriorityQueue<TElement,TPriority> sem removê-lo.

Remove(TElement, TElement, TPriority, IEqualityComparer<TElement>)

Remove a primeira ocorrência que é igual ao parâmetro especificado.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TrimExcess()

Define a capacidade para o número real de itens no PriorityQueue<TElement,TPriority>, se isso for menor que 90% da capacidade atual.

TryDequeue(TElement, TPriority)

Remove o elemento mínimo do PriorityQueue<TElement,TPriority>e copia-o e sua prioridade associada aos argumentos element e priority.

TryPeek(TElement, TPriority)

Retorna um valor que indica se há um elemento mínimo no PriorityQueue<TElement,TPriority>e, se houver, copia-o e sua prioridade associada aos argumentos element e priority. O elemento não é removido do PriorityQueue<TElement,TPriority>.

Aplica-se a