Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
542 of 1492 menu
◀ ▶

Метод Dequeue

Метод Dequeue класса PriorityQueue<TElement, TPriority> удаляет элемент с минимальным приоритетом по умолчанию и возвращает только TElement, без пары с приоритетом. Пустая очередь даёт InvalidOperationException.

Синтаксис

TElement item = pq.Dequeue();

Пример

Давайте снимем элемент с приоритетом 1:

using System; using System.Collections.Generic; class Program { static void Main() { PriorityQueue<string, int> pq = new PriorityQueue<string, int>(); pq.Enqueue("c", 3); pq.Enqueue("a", 1); pq.Enqueue("b", 2); Console.WriteLine(pq.Dequeue()); } }

Результат выполнения кода:

"a"

Пример

Давайте опустошим очередь через Dequeue:

using System; using System.Collections.Generic; class Program { static void Main() { PriorityQueue<int, int> pq = new PriorityQueue<int, int>(); pq.Enqueue(1, 2); pq.Enqueue(2, 1); pq.Enqueue(3, 3); Console.WriteLine(pq.Dequeue()); Console.WriteLine(pq.Dequeue()); Console.WriteLine(pq.Dequeue()); } }

Результат выполнения кода:

2 1 3

Пример

Давайте проверим Count после одного Dequeue:

using System; using System.Collections.Generic; class Program { static void Main() { PriorityQueue<string, int> pq = new PriorityQueue<string, int>(); pq.Enqueue("a", 1); pq.Enqueue("b", 2); pq.Dequeue(); Console.WriteLine(pq.Count); } }

Результат выполнения кода:

1

Смотрите также

  • метод Enqueue,
    который ставит элемент с приоритетом
  • метод Peek,
    который смотрит важный элемент без снятия
  • метод TryDequeue,
    который безопасен для пустой очереди
  • метод Dequeue,
    который снимает голову FIFO-очереди
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить