Каковы практические применения очередей?

Каковы практические применения очередей в области компьютерных наук. Где мы их используем и почему? Я слышал, что мы используем их в программах видеоигр и компьютерных симуляторов, это правда? Зачем? Помимо этих двух областей, каковы другие практические применения Очередей как структуры данных?

Ответ 1

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

Представьте, что у вас есть веб-сайт, который обслуживает файлы тысячам пользователей. Вы не можете обслуживать все запросы, вы можете обрабатывать только 100 одновременно. Справедливой политикой будет первая подача: служить 100 за раз в порядке прибытия. Очередь определенно будет самой подходящей структурой данных.

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

Ответ 2

Стеки используются для кнопок отмены в различных программных средствах. Последние изменения внесены в стек. Даже кнопка "Назад" в браузере работает с помощью стека, где все недавно посещенные веб-страницы помещаются в стек.

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

Ответ 3

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

Ответ 4

Все виды систем, где запросы/задания/клиенты обрабатываются одним или несколькими обработчиками: входящие элементы хранятся в очереди и когда обработчик свободен, он выдает новый элемент из очереди и начинает его обрабатывать. Этот шаблон используется, например, на всех веб-серверах. См. проблема производителя и потребителя.

Ответ 5

Скажите, что у вас есть несколько документов для печати сразу. Ваша ОС помещает все эти документы в очередь и отправляет их на принтер. Принтер берет и печатает каждый документ в порядке, в котором документы помещаются в очередь, то есть First In, First Out.

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

Ответ 6

Типичное использование очередей в симуляциях и операционных системах.

Operating systems often maintain a queue of processes that are ready to execute or that are waiting for a particular event to occur.
Computer systems must often provide a "holding area" for messages between two processes, two programs, or even two systems. This holding area is usually called a "buffer" and is often implemented as a queue.

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

Ответ 7

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

Например, если вы создаете приложение, которое будет принимать входные данные от нескольких пользователей, и вы должны их обслуживать на основе "First Come First Service". Это означает, что ваше приложение будет обслуживать первый запрос First
а не каждый раз, когда вы проверяете отметку времени каждого запроса и смотрите, кто является старейшим
вы должны перенести каждый входящий запрос в стек | и вам нужно только каждый раз выгружать стек, чтобы увидеть следующий запрос

Ответ 8

В первом ( "неглубоко" ) поиске графа вы будете использовать очередь для хранения узлов, когда вы их обнаружите.

Ответ 9

в компьютерной компиляции производится FIRST IN FIRST OUT [FIFO]. Первая строка сначала компилирует первый результат, а затем QUEUE.

Ответ 10

Очереди используют первую в первой концепции (FIFO). Первое задание, которое необходимо выполнить, первое, что нужно обработать. например OS ставит в очередь документы для печати в очереди, где принтер будет печатать только первый документ и выдавать выходные данные

Ответ 11

Игра: Алгоритмы, которые исследуют лабиринты взаимосвязанных комнат, используют очереди, чтобы отслеживать, какие параметры еще не изучены.

Ответ 12

Очереди также могут использоваться для реализации первого поиска Breadth - алгоритма, который пересекает все вершины в графе, которые могут быть достигнуты из начальной вершины.

Ответ 13

  • Обслуживание запросов на одном общем ресурсе, таком как принтер.
  • Планирование задач ЦП.
  • В сценарии реальной жизни телефонные системы Call-центра используют очереди, чтобы люди, звонящие им в порядке, пока представитель службы не будет свободен.

для получения дополнительной информации https://coderworld109.blogspot.in/2017/12/applications-of-queue-data-structure.html

Ответ 14

Принтер для хранения. В планировании ЦП. В качестве политики замены страниц (FIFO).

Существует много примеров реальной жизни, которые могут помочь лучше понять очередь. Например, везде, где мы используем очередь, чтобы получить или дать что-нибудь.