Både stakk og kø er definert av en sekvensiell samling av objekter organisert i en bestemt rekkefølge i en datastruktur basert på noen ekvivalenter i sanntid. Begge er lineære datastrukturer som brukes til effektivt å lagre og hente dataelementer, med unntak av arbeidsprinsippet. En stabel er en bestilt liste over elementer der alle innsettinger og slettinger er lagret i den samme enden, mens en kø er nøyaktig motsatt av en stabel som er åpen i begge ender, noe som betyr at en ende brukes til å sette inn data mens den andre skal fjernes data. Hovedforskjellen mellom de to er deres arbeidsmekanisme.
En stabel er en lineær datastruktur som brukes til å organisere data på en bestemt måte slik at den kan brukes effektivt. Maskiner trenger retninger for å oppnå oppgaver både enkle og kompliserte i form av kommandoer. På samme måte kan data struktureres på mange forskjellige måter, og en av de mest effektive datastrukturene er stabler. Det er en abstrakt datastruktur som ligner en fysisk stabel der objekter er organisert i en bestemt rekkefølge, spesielt basert på en siste-in-first-out (LIFO) -mekanisme, noe som betyr at det siste elementet som er lagt til, skal nås først og omvendt . Den vanligste bruken av en stabeldatastruktur er backtracking eller dybde-første søkealgoritmen.
Kø er også en lineær datastruktur, noe som ligner en stabeldatastruktur, bortsett fra at den er åpen i begge ender. Det er en sekventiell samling av objekter som ligner en kø av mennesker. I motsetning til stabler, er den basert på FIFO-prinsippet, som betyr at det tidligste tilførte elementet kan nås først og omvendt. I en kø brukes en ende til å sette inn elementene og den andre enden for å fjerne elementene. Som en linje av mennesker, er nye enheter plassert bak og allerede servert enheter fjernes fra forsiden. To operasjoner er tillatt i kø: enqueue og dequeue. Enqueue refererer til tillegg av elementer på baksiden og dequeue betyr å fjerne elementer fra forsiden.
Stack er en grunnleggende datastruktur, en abstrakt datatype representert av en lineær struktur som ligner en fysisk stabel der objektet kan legges til når som helst, men kan fjernes som legges til sist. Enkelt sagt finner innsetting og sletting av objekter i en stabeldata struktur i den ene enden som er toppen av stabelen. Køen ligner noe på stabler, bortsett fra at den er åpen i begge ender - en ende for å sette inn objektet og den andre for å fjerne objektet, noe som betyr at gjenstandene som er lagret først, kan nås først.
Både stakk og kø er ikke-primitive abstrakte datatyper i datastruktur servert som en samling av objekter der enhetene er lagret i en bestemt rekkefølge. En stabel er en beholder med objekter der enhetene lagres og fjernes basert på LIFO-arbeidsprinsippet som betyr at objektene kan lagres og hentes på en gang. En kø, derimot, er en samling objekter der enhetene lagres og fjernes i henhold til FIFO-prinsippet (first-in-first-out).
Navnet stabelen refererer til analogi av en struktur der elementene er plassert ovenpå hverandre som en stabel som en kjekspakke. Den ene enden brukes til å plassere og fjerne objekter fra stabelen, noe som gjør det enkelt å velge et objekt fra toppen, samtidig som det gjør det vanskelig å få tilgang til det siste objektet som krever fjerning av flere elementer en etter en fra toppen. Kø er det motsatte av stabler som betyr at nye objekter plasseres på baksiden og fjernes fra forsiden akkurat som en bok.
Det er to grunnleggende operasjoner som kan utføres på stabler: Trykk, som i utgangspunktet legger et element til stabelen, og hvis stakken er full, er det en Overflow-tilstand og pop, som fjernet det nyeste elementet fra stakken og en tom stabel , refererer til en understrømstilstand. Det er en ekstra kikkoperasjon assosiert med stabler som lar deg få tilgang til elementet øverst uten å endre stakken. To grunnleggende prinsipper er knyttet til køen: enqueue som betyr å legge til objekter på baksiden, og dequeue som refererer til fjerning av objekter fra fronten.
En av de mest primære bruksområder for en stabeldata struktur er Dybde-første søk algoritmen, som er basert på ideen om backtracking hovedsakelig brukt for å søke i en graf eller tre datastruktur. Det kan også brukes til kompilator / operativsystem for å behandle funksjonssamtaler eller å implementere rekursive funksjoner. Den vanligste bruken av en kødata struktur er CPU planlegging eller disk planlegging eller operasjonell forskning. Et ekte eksempel på en kødatastruktur er køen til mennesker selv hvor personen som står først i linjen skal serveres først.
Både stakk og kø er ikke-primitive abstrakte datastrukturer definert som en samling objekter organisert i en bestemt rekkefølge i en datamaskin, men med forskjellige arbeidsprinsipper. Selv om de både vedrører organisering og lagring av data, gjør de det veldig annerledes. Stack er en grunnleggende datastruktur basert på prinsippet om LIFO også kalt som sist i første ut, noe som betyr at elementet som er lagt til sist skal nås først eller FILO betyr at det første elementet i skal nås sist. Tvert imot er køen basert på FIFI (først-i-først-ut) -prinsippet, noe som betyr at det tidligste elementet skal nås først.