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

Метод Peek

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

Синтаксис

TElement item = pq.Peek();

Пример

Давайте посмотрим элемент с приоритетом 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.Peek()); } }

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

"a"

Пример

Давайте убедимся, что Peek не уменьшает Count:

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.Peek(); Console.WriteLine(pq.Count); } }

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

2

Пример

Давайте дважды вызовем Peek подряд:

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); Console.WriteLine(pq.Peek()); Console.WriteLine(pq.Peek()); } }

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

"a" "a"

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

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