Линейна опашка срещу кръгова опашка

Автор: Laura McKinney
Дата На Създаване: 4 Април 2021
Дата На Актуализиране: 17 Може 2024
Anonim
Линейна опашка срещу кръгова опашка - Друг
Линейна опашка срещу кръгова опашка - Друг

Съдържание

Разликата между линейната опашка и кръговата опашка е, че в линейната опашка данните и инструкциите са организирани в последователен ред един след друг, докато в кръговата опашка данните и инструкциите са подредени в кръгов ред, където последният елемент е свързан с първия елемент.


Опашката е най-важната структура на данни и ако искате да овладеете компютърно програмиране, трябва да научите за опашката, има две опашки, която е линейна и кръгова опашка. В линейната опашка данните и инструкциите се организират в последователен ред един след друг, докато в кръговата опашка данните и инструкциите са подредени в кръгов ред, където последният елемент е свързан с първия елемент. Опашката е непримитивна линейна структура на данни, която се използва първо в метода first out.

Линейната опашка следва първо в метода first out. Линейната опашка е като правата линия, където елементите са един след друг. Елементът се добавя от едната страна и се изтрива от друга страна. Има много операции, които се извършват на опашката, тоест опашката се инициализира до нула или е празна и след това проверяваме дали опашката е празна или не, след като проверяваме, че опашката е пълна или не. Извършва се операция за запитване, която е вмъкване на новия елемент от края на опашката и накрая има dequeue, който е изтриване на елемента от предния край. Има два начина да се реализира опашката, които са статично, когато казваме статично, това означава да се използват масиви. Друг начин е динамично, като казвате динамично това означава да използвате указатели.


В кръговата опашка данните и инструкциите се организират в кръгов ред, където последният елемент е свързан с първия елемент. Линейната опашка има известно ограничение, което кръговата опашка няма. В кръгла опашка се добавя нов елемент в първата позиция на опашката. В линейната опашка, вмъкването се извършва само от един заден край, а изтриването от предния край. Ако опашката е пълна, възниква ситуация, при която нов елемент не може да бъде добавен. В кръгла опашка два края са свързани чрез указател, в който първият елемент идва след вмъкването на последния елемент. Състояние на препълване, което се генерира в линейната опашка, не се генерира в кръговата опашка. Условията на кръглата опашка са отпред, трябва да са първият елемент, трябва да има условие, че отпред = отзад в кръговата опашка. Когато се добави нов елемент, условието става отзад = заден +1 и елемент се изтрива от опашката, след което условието става предно = предно +1.

Съдържание: Разлика между линейната опашка и кръговата опашка

  • Сравнителна диаграма
  • Линейна опашка
  • Кръгла опашка
  • Ключови разлики
  • заключение

Сравнителна диаграма

основаЛинейна опашкаКръгла опашка
значениеВ линейната опашка данните и инструкциите се организират в последователен ред един след друг

В кръговата опашка данните и инструкциите се организират в кръгов ред, където последният елемент е свързан с първия елемент.


 

ПоръчкаЛинейната опашка следва първо в първи редКръглата опашка няма конкретна поръчка
Позицията на вмъкване и изтриванеВ линейната опашка, вмъкването става от задната страна, а изтриването се случва от предната страна.В кръговата опашка изтриването и вмъкването може да се случи от всяка страна.
Ефективност Линейната опашка е неефективна от тази кръгова опашка.Кръглата опашка е ефективна от линейната опашка.

Линейна опашка

Линейната опашка следва първо в метода first out. Линейната опашка е като правата линия, където елементите са един след друг. Елементът се добавя от едната страна и се изтрива от друга страна. Има много операции, които се извършват на опашката, тоест опашката се инициализира до нула или е празна и след това проверяваме дали опашката е празна или не, след като проверяваме, че опашката е пълна или не. Извършва се операция за запитване, която е вмъкване на новия елемент от края на опашката и накрая има dequeue, който е изтриване на елемента от предния край. Има два начина да се реализира опашката, които са статично, когато казваме статично, това означава да се използват масиви. Друг начин е динамично, като казвате динамично това означава да използвате указатели.

Кръгла опашка

В кръговата опашка данните и инструкциите се организират в кръгов ред, където последният елемент е свързан с първия елемент. Линейната опашка има известно ограничение, което кръговата опашка няма. В кръгла опашка се добавя нов елемент в първата позиция на опашката. В линейната опашка, вмъкването се извършва само от един заден край, а изтриването от предния край. Ако опашката е пълна, възниква ситуация, при която нов елемент не може да бъде добавен. В кръгла опашка два края са свързани чрез указател, в който първият елемент идва след вмъкването на последния елемент. Състояние на препълване, което се генерира в линейната опашка, не се генерира в кръговата опашка. Условията на кръглата опашка са отпред, трябва да са първият елемент, трябва да има условие, че отпред = отзад в кръговата опашка. Когато се добави нов елемент, условието става отзад = заден +1 и елемент се изтрива от опашката, след което условието става предно = предно +1.

Ключови разлики

  1. В линейната опашка данните и инструкциите се организират в последователен ред един след друг, докато в кръговата опашка данните и инструкциите са организирани в кръгов ред, където последният елемент е свързан с първия
  2. Линейната опашка следва първо в първи ред, докато кръговата опашка няма конкретен ред.
  3. При линейна опашка вмъкването става от задната страна, а изтриването става от предната страна. Като има предвид, че при кръгова опашка изтриването и вмъкването може да се случи от всяка страна.
  4. Линейната опашка е неефективна от тази кръгова опашка, докато кръговата опашка е ефективна от линейната опашка.

заключение

В тази статия по-горе виждаме ясната разлика между линейната опашка и кръговата опашка с изпълнението.