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> может храниться до |
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>и копирует его и связанный с ним приоритет в аргументы |
TryPeek(TElement, TPriority) |
Возвращает значение, указывающее, существует ли минимальный элемент в PriorityQueue<TElement,TPriority>, а если он присутствует, копирует его и связанный с ним приоритет в аргументы |