Стацк вс Хеап
Стацк је наручена листа у коју се уметање и брисање ставки листе може вршити само на једном крају који се зове врх. Из тог разлога, стог се сматра структуром података Ласт ин Фирст оут (ЛИФО). Хеап је посебна структура података која се заснива на дрвећу и она задовољава посебно својство које се назива хеап својство. Такође, гомила је комплетно дрво, што значи да нема празнина између лишћа стабла, тј. У целокупном дрвету се сваки ниво попуњава пре додавања новог нивоа на дрво, а чворови на датом нивоу попуњавају се са с лева надесно.
Шта је Стацк?
Као што је раније споменуто, стог је структура података у коју се елементи додају и уклањају са само једног краја који се зове врх. Стекови омогућавају само две темељне операције које се зову пусх и поп. Пусх операција додаје нови елемент на врх снопа. Поп операција уклања елемент са врха снопа. Ако је сноп већ попуњен, када се изведе пусх операција, сматра се претицањем снопа. Ако се поп операција изводи на већ празном снопу, сматра се као подмладак. Због малог броја операција које би се могле извести на хрпи, сматра се ограниченом структуром података. Уз то, према начину на који су дефиниране пусх и поп операције, јасно је да елементи који су задњи пут додани у стог прво испадају из снопа. Стога се стацк сматра ЛИФО структуром података.
Шта је Хеап?
Као што је раније споменуто, гомила је комплетно стабло које задовољава својство гомиле. Својство Хеап наводи да је, ако је и подређени чвор к, вриједност похрањена у чвору к требала бити већа или једнака вриједности похрањеној у чвору и (тј. Вриједност (к) ≥ вриједност (и)). Ово својство подразумева да би чвор са највећом вредност увек био смештен у корену. Копча направљена помоћу овог својства назива се мак-хеап. Постоји још једна варијанта својства хеап која наводи обрнуто. (тј. вредност (к) ≤ вредност (и)). То подразумева да би се чвор са најмањом вредношћу увек налазио у корену, тако да се назива мин-хеап. Постоји широк спектар операција које се обављају на групама, као што су проналажење минималног (у мин-хеап-у) или максималног (у мак-хеап-у), брисања минималног (у мин-хеап-у) или максималног (у мак-хеап-у), повећања (у мак -хеапс) или смањује (у мин-хепс) тастер, итд.
Која је разлика између Стацк-а и Хеап-а?
Главна разлика између скупова и хрпа је та што је док је стацк линеарна структура података, хеап је нелинеарна структура података. Стацк је наредјена листа која прати својство ЛИФО, док је хеап комплетно стабло које прати својство хеап. Надаље, сноп је ограничена структура података која подржава само ограничени број операција као пусх и поп, док хеап подржава широк спектар операција као што су проналажење и брисање минималног или максималног, повећање или смањење кључа и спајање.