Прво ћемо погледати шта је стек и шта је ред појединачно, а затим ћемо разговарати о разликама између стека и реда.
ред аутоцад команде
Шта је стек?
Структура података. У случају низа, могућ је насумични приступ, односно било ком елементу низа може се приступити у било ком тренутку, док је у стеку могућ само секвенцијални приступ. То је контејнер који прати правило уметања и брисања. Следи принцип ЛИФО (последњи ушао први изашао) у коме се уметање и брисање одвијају са једне стране познате као а топ . У стек можемо уметнути елементе сличног типа података, тј. различити елементи типа података не могу се убацити у исти стек. Две операције се изводе у ЛИФО-у, тј. гурати и поп операција.
Следеће су операције које се могу извршити на стеку:
У хрпи, тхе топ је показивач који се користи за праћење последњег уметнутог елемента. Да бисмо имплементирали стек, требало би да знамо величину стека. Морамо да доделимо меморију да бисмо добили величину стека. Постоје два начина за имплементацију стека:
Шта је ред?
А
Сличности између стека и реда.
Постоје две сличности између стека и реда:
И стек и ред су линеарна структура података, што значи да се елементи чувају узастопно и да им се приступа у једном покретању.
И стог и ред чекања су флексибилне величине, што значи да могу да расту и да се смањују у складу са захтевима током рада.
Разлике између стека и реда
Следеће су разлике између стека и реда:
Основа за поређење | Гомила | Куеуе |
---|---|---|
Принцип | Следи принцип ЛИФО (Ласт Ин- Фирст Оут), који подразумева да ће елемент који је последњи уметнут бити први који ће бити обрисан. | Следи принцип ФИФО (Фирст Ин-Фирст Оут), који подразумева да би елемент који је први додат био први елемент који ће бити уклоњен са листе. |
Структура | Има само један крај са којег се врши и уметање и брисање, а тај крај је познат као врх. | Има два краја, односно предњи и задњи крај. Предњи крај се користи за брисање, док се задњи крај користи за уметање. |
Број коришћених показивача | Садржи само један показивач познат као горњи показивач. Горњи показивач садржи адресу последњег уметнутог или највишег елемента стека. | Садржи два показивача предњи и задњи показивач. Предњи показивач садржи адресу првог елемента, док задњи показивач држи адресу последњег елемента у реду. |
Извршене операције | Обавља две операције, пусх и поп. Операција пусх умеће елемент у листу док операција поп уклања елемент са листе. | Изводи углавном две операције, стављање у ред и декуеуе. Операција стављања у ред обавља уметање елемената у ред док операција декуеуе обавља брисање елемената из реда. |
Испитивање празног стања | Ако је топ==-1, што значи да је стек празан. | Ако је фронт== -1 или фронт = реар+1, што значи да је ред празан. |
Испитивање пуног стања | Ако је топ== мак-1, овај услов имплицира да је стек пун. | Ако је реар==мак-1, овај услов имплицира да је стек пун. |
Варианте | Она нема типове. | Има три типа као што су приоритетни ред, кружни ред и двострани ред. |
Имплементација | Има једноставнију имплементацију. | Има релативно сложену имплементацију од стека. |
Визуелизација | Стацк се визуализује као вертикална колекција. | Ред се визуализује као хоризонтална колекција. |