Учебники

18) Очередь C #

Что такое очередь в C #?

Очередь — это особый набор случаев, представляющий концепцию «первым пришел — первым вышел». Представьте себе очередь людей, ожидающих автобус. Как правило, первый человек, который входит в очередь, будет первым человеком, который войдет в автобус. Точно так же последний человек, который войдет в очередь, будет последним человеком, который войдет в автобус. Элементы добавляются в очередь, один поверх друг друга.

Процесс добавления элемента в очередь является операцией enqueuer. Чтобы удалить элемент из очереди, вы можете использовать операцию dequeuer. Работа в очередях аналогична стеку, который мы видели ранее.

Давайте рассмотрим операции, доступные для коллекции Queue, более подробно.

Декларация очереди

Объявление очереди приведено ниже. Очередь создается с помощью типа данных очереди. Ключевое слово «new» используется для создания объекта очереди. Затем объект присваивается переменной qt.

Queue qt = new Queue()

Добавление элементов в очередь

Метод enqueue используется для добавления элемента в очередь. Общий синтаксис утверждения приведен ниже.

Queue.enqueue(element)

Удаление элементов из очереди

Метод dequeue используется для удаления элемента из очереди. Операция удаления возвращает первый элемент очереди. Общий синтаксис утверждения приведен ниже

Queue.dequeue()

подсчитывать

Это свойство используется для получения количества элементов в очереди. Ниже приведен общий синтаксис этого утверждения.

Queue.Count

Содержит

Этот метод используется для проверки наличия элемента в очереди. Ниже приведен общий синтаксис этого утверждения. Инструкция вернет true, если элемент существует, иначе вернет значение false.

Queue.Contains(element)

Теперь давайте посмотрим, как это работает на уровне кода. Весь приведенный ниже код будет записан в наше консольное приложение.

Код будет записан в наш файл Program.cs. В приведенной ниже программе мы напишем код, чтобы увидеть, как мы можем использовать вышеупомянутые методы.

пример

В этом примере мы увидим, как создается очередь. Далее мы увидим, как отображать элементы очереди и использовать методы Count и Contain.

C # Коллекции

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Queue qt = new Queue();
   qt.Enqueue(1);
   qt.Enqueue(2);
   qt.Enqueue(3);

   foreach (Object obj in qt)
   {
    Console.WriteLine(obj);
   }
    Console.WriteLine(); Console.WriteLine();
    Console.WriteLine("The number of elements in the Queue " + qt.Count);
    Console.WriteLine("Does the Queue contain " + qt.Contains(3));
    Console.ReadKey();
   }
 }
} 

Код Объяснение

  1. Первый шаг используется для объявления очереди. Здесь мы объявляем qt как переменную для хранения элементов нашей очереди.
  2. Далее мы добавляем 3 элемента в нашу очередь. Каждый элемент добавляется с помощью метода «enqueue».
  3. Теперь следует отметить одну вещь, касающуюся очередей: доступ к элементам невозможен с помощью позиции индекса, такой как список массивов. Нам нужно использовать другой подход для отображения элементов очереди. Итак, вот как мы показываем элементы очереди.
  • Сначала мы объявляем временную переменную с именем obj. Это будет использоваться для хранения каждого элемента очереди.
  • Затем мы используем оператор foreach для прохождения каждого элемента очереди.
  • Для каждого элемента Queue значение присваивается переменной obj.
  • Затем мы используем команду Console.Writeline для отображения значения на консоли.
  1. Мы используем свойство «Количество», чтобы получить количество элементов в очереди. Это свойство вернет число. Затем мы отображаем это значение на консоли.
  2. Затем мы используем метод «Содержит», чтобы увидеть, присутствует ли значение 3 в нашей очереди. Это вернет или истинное или ложное значение. Затем мы отображаем это возвращаемое значение на консоли.

Если вышеуказанный код введен правильно и программа запущена, будет отображен следующий вывод.

Вывод

C # Коллекции

Из вывода мы можем ясно видеть, что элементы очереди отображаются. Обратите внимание, что в отличие от «стека» в «очереди» первый элемент, помещенный в очередь, отображается первым. Количество элементов очереди также отображается в выходных данных. Кроме того, значение True отображается, чтобы сказать, что значение 3 определено в очереди.

C # очередь очереди

Теперь давайте посмотрим на функциональность удаления. Мы увидим код, необходимый для удаления последнего элемента из очереди.

C # Коллекции

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Queue qt = new Queue();
   qt.Enqueue(1);
   qt.Enqueue(2);
   qt.Enqueue(3);

   qt.Dequeue();

   foreach (Object obj in qt)
   {
    Console.WriteLine(obj);
   }
    Console.ReadKey();
   }
 }
} 

Код Объяснение

  1. Здесь мы просто запускаем метод «dequeue», который используется для удаления элемента из очереди. Этот метод удалит первый элемент очереди.

Если вышеуказанный код введен правильно и программа запущена, будет отображен следующий вывод.

Вывод:

C # Коллекции

Из результатов видно, что первый элемент, который был добавлен в очередь, а именно элемент 1, был удален из очереди.

Резюме

  • Очередь основана на концепции «первым пришел — первым вышел». Операция добавления элемента в очередь называется операцией постановки в очередь. Операция удаления элемента в очередь называется операцией удаления очереди.