В этом простом и коротком блоге мы узнаем, как реализовать одну из самых распространенных и полезных структур данных в программировании — Очередь.

ЧТО ТАКОЕ ОЧЕРЕДЬ И ДЛЯ ЧЕГО ОНА ИСПОЛЬЗУЕТСЯ?

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

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

ОПЕРАЦИИ С ОЧЕРЕДЬЮ

Очередь используется для выполнения операций над данными, которые она хранит, поэтому с помощью очереди мы можем

  1. Enqueue — добавление элементов в начало очереди
  2. Dequeue — удаление элементов из конца (задней) очереди
  3. Peek — проверить первый элемент очереди
  4. Проверить, пуста ли очередь
  5. Проверьте, заполнена ли очередь

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

ИСПОЛЬЗОВАНИЕ JAVASCRIPT ДЛЯ РЕАЛИЗАЦИИ ОЧЕРЕДИ

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

Итак, план очень прост, все, что нам нужно, это выполнить четыре операции.

  1. Enqueue() добавить в начало очереди
  2. Dequeue() удалить из конца очереди
  3. Peek() возвращает нам первый элемент, не удаляя его
  4. isEmpty() проверяет, пуста ли очередь в данный момент

Давайте сначала объявим класс и реализуем эти методы

Как показано во фрагменте, мы инициализируем пустой массив сразу после создания экземпляра класса и называем его contents.

Enqueue()

Мы используем типичный метод push(), чтобы поместить элемент в конец массива.

Dequeue()

Как правило, чтобы извлечь элемент из массива, мы используем метод pop(), который удаляет последний элемент массива и возвращает его, но в нашем случае нам нужно удалить первый элемент очереди, поэтому мы используем метод shift(), который возвращает первый элемент. элемент массива

Peek()

Это довольно просто, мы возвращаем элемент с индексом 0, который является первым элементом, не удаляя его.

isEmpty()

Этот просто проверяет, равно ли свойство length массива нулю, и возвращает либо true, либо false.

ПРОВЕРКА НАШЕЙ ОЧЕРЕДИ

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

Вот так у нас есть полностью работающая линейная очередь с базовыми функциями одной 🎉

Для ленивых умников ниже приведен полный код 😅

Большое спасибо за чтение, и я надеюсь, что сегодня вы узнали кое-что новое ♥️