PriorityQueue<TElement,TPriority> Класс

Определение

Представляет коллекцию элементов, имеющих значение и приоритет. При извлечении из очереди удаляется элемент со значением наименьшего приоритета.

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)

Параметры типа

TElement

Задает тип элементов в очереди.

TPriority

Указывает тип приоритета, связанного с элементами, помещенными в очередь.

Наследование
PriorityQueue<TElement,TPriority>

Комментарии

Реализует четвертичное минимальное кучу с поддержкой массива. Каждый элемент помещен в очередь со связанным приоритетом, определяющим порядок вывода из очереди. Элементы с наименьшим приоритетом сначала удаляются из очереди. Обратите внимание, что тип не гарантирует семантику "первым в начале" для элементов с равным приоритетом.

Конструкторы

PriorityQueue<TElement,TPriority>()

Инициализирует новый экземпляр класса PriorityQueue<TElement,TPriority>.

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

Инициализирует новый экземпляр PriorityQueue<TElement,TPriority> класса с указанным пользовательским компаратором приоритета.

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

Инициализирует новый экземпляр PriorityQueue<TElement,TPriority> класса , заполненный указанными элементами и приоритетами.

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

Инициализирует новый экземпляр PriorityQueue<TElement,TPriority> класса , заполненный указанными элементами и приоритетами, а также заданным пользовательским компаратором приоритетов.

PriorityQueue<TElement,TPriority>(Int32)

Выполняет инициализацию нового экземпляра класса PriorityQueue<TElement,TPriority> с указанными начальными возможностями.

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

Инициализирует новый экземпляр PriorityQueue<TElement,TPriority> класса с указанной начальной емкостью и пользовательским компаратором приоритетов.

Свойства

Comparer

Возвращает компаратор приоритета, используемый PriorityQueue<TElement,TPriority>объектом .

Count

Получает число элементов, содержащихся в интерфейсе PriorityQueue<TElement,TPriority>.

UnorderedItems

Возвращает коллекцию, которая перечисляет элементы очереди неупорядоченным образом.

Методы

Clear()

Удаляет все элементы из коллекции PriorityQueue<TElement,TPriority>.

Dequeue()

Удаляет и возвращает минимальный элемент из , PriorityQueue<TElement,TPriority> то есть элемент с наименьшим значением приоритета.

DequeueEnqueue(TElement, TPriority)

Удаляет минимальный элемент, а затем сразу же добавляет указанный элемент со связанным приоритетом в PriorityQueue<TElement,TPriority>.

Enqueue(TElement, TPriority)

Добавляет указанный элемент со связанным приоритетом в PriorityQueue<TElement,TPriority>.

EnqueueDequeue(TElement, TPriority)

Добавляет указанный элемент со связанным приоритетом в PriorityQueue<TElement,TPriority>и немедленно удаляет минимальный элемент, возвращая результат.

EnqueueRange(IEnumerable<TElement>, TPriority)

Постановка в очередь пар элементов в PriorityQueue<TElement,TPriority>последовательность элементов , связанных с заданным приоритетом.

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

Постановка в очередь последовательности пар "элемент-приоритет" в PriorityQueue<TElement,TPriority>.

EnsureCapacity(Int32)

Гарантирует, что PriorityQueue<TElement,TPriority> может содержать capacity элементы без дальнейшего расширения резервного хранилища.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
Peek()

Возвращает минимальный элемент из , PriorityQueue<TElement,TPriority> не удаляя его.

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

Представляет коллекцию элементов, имеющих значение и приоритет. При извлечении из очереди удаляется элемент со значением наименьшего приоритета.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TrimExcess()

Задает для емкости фактическое количество элементов в PriorityQueue<TElement,TPriority>, если оно меньше 90 процентов от текущей емкости.

TryDequeue(TElement, TPriority)

Удаляет минимальный элемент из PriorityQueue<TElement,TPriority>и копирует его и связанный с ним приоритет в element аргументы и priority .

TryPeek(TElement, TPriority)

Возвращает значение, указывающее, существует ли минимальный элемент в PriorityQueue<TElement,TPriority>, и если он присутствует, копирует его и связанный с ним приоритет в element аргументы и priority . Элемент не удаляется из PriorityQueue<TElement,TPriority>.

Применяется к