Что такое очередь в C #?
Queue - это особая коллекция случаев, которая представляет собой концепцию «первым пришел - первым обслужен». Представьте себе очередь людей, ожидающих автобуса. Обычно первый человек, который встает в очередь, будет первым, кто войдет в автобус. Точно так же последний человек, который войдет в очередь, будет последним, кто войдет в автобус. Элементы добавляются в очередь один поверх другого.
Процесс добавления элемента в очередь - это операция постановки в очередь. Чтобы удалить элемент из очереди, вы можете использовать операцию удаления из очереди. Работа с очередями аналогична стеку, который мы видели ранее.
Давайте подробнее рассмотрим операции, доступные для коллекции Queue.
Объявление очереди
Объявление очереди представлено ниже. Очередь создается с помощью типа данных очереди. Ключевое слово «новое» используется для создания объекта Очереди. Затем объект присваивается переменной qt.
Queue qt = new Queue()
Добавление элементов в очередь
Метод enqueue используется для добавления элемента в очередь. Общий синтаксис оператора приведен ниже.
Queue.enqueue(element)
Удаление элементов из очереди
Метод dequeue используется для удаления элемента из очереди. Операция удаления из очереди вернет первый элемент очереди. Общий синтаксис оператора приведен ниже.
Queue.dequeue()
Считать
Это свойство используется для получения количества элементов в очереди. Ниже приведен общий синтаксис этого оператора.
Queue.Count
Содержит
Этот метод используется для проверки наличия элемента в очереди. Ниже приведен общий синтаксис этого оператора. Оператор вернет true, если элемент существует, иначе он вернет значение false.
Queue.Contains(element)
Теперь посмотрим, как это работает на уровне кода. Весь приведенный ниже код будет записан в наше консольное приложение.
Код будет записан в наш файл Program.cs. В приведенной ниже программе мы напишем код, чтобы увидеть, как мы можем использовать вышеупомянутые методы.
Пример
В этом примере мы увидим, как создается очередь. Далее мы увидим, как отображать элементы очереди и использовать методы Count и Contain.
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();}}}
Код Пояснение
- Первый шаг используется для объявления очереди. Здесь мы объявляем qt как переменную для хранения элементов нашей очереди.
- Затем мы добавляем 3 элемента в нашу очередь. Каждый элемент добавляется методом «постановки в очередь».
- Теперь нужно отметить одну вещь, касающуюся очередей, - это то, что к элементам нельзя получить доступ через позицию индекса, как к списку массивов. Нам нужно использовать другой подход для отображения элементов очереди. Итак, вот как мы отображаем элементы очереди.
- Сначала мы объявляем временную переменную obj. Он будет использоваться для хранения каждого элемента очереди.
- Затем мы используем оператор foreach для просмотра каждого элемента очереди.
- Для каждого элемента Queue значение присваивается переменной obj.
- Затем мы используем команду Console.Writeline для вывода значения на консоль.
- Мы используем свойство «Count», чтобы получить количество элементов в очереди. Это свойство вернет число. Затем мы выводим это значение на консоль.
- Затем мы используем метод «Contains», чтобы увидеть, присутствует ли значение 3 в нашей очереди. Это вернет либо истинное, либо ложное значение. Затем мы выводим это возвращаемое значение на консоль.
Если приведенный выше код введен правильно и программа запущена, отобразится следующий вывод.
Выход
Из вывода мы ясно видим, что отображаются элементы очереди. Обратите внимание, что, в отличие от «стека» в «очереди», первым отображается первый элемент, помещенный в очередь. Количество элементов очереди также отображается в выводе. Кроме того, отображается значение True, чтобы сказать, что значение 3 определено в очереди.
Удаление очереди 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();}}}
Код Пояснение
- Здесь мы просто вызываем метод «dequeue», который используется для удаления элемента из очереди. Этот метод удалит первый элемент очереди.
Если приведенный выше код введен правильно и программа запущена, отобразится следующий вывод.
Выход:
Из выходных данных мы видим, что первый элемент, который был добавлен в очередь, то есть элемент 1, был удален из очереди.
Резюме
- Очередь основана на концепции «первым пришел - первым обслужен». Операция добавления элемента в очередь называется операцией постановки в очередь. Операция удаления элемента в очередь называется операцией удаления из очереди.