skúšal som to vygoogliť (lebo osobne to nepoznám, prvýkrát takú štruktúru vidím, a ani sa nedivím že som sa s ňou nestretol) a našiel som asi len 4 odkazy. Všetky z FRI UNIZA. Takže to bude nejaký vymyslený názov (a možno aj vymyslená štruktúra) nejakého pána docenta. Lebo ako som pozrel jeden link, písalo sa tam aj "hešovacie tabuľky" a podobné vtipné výrazy
Veľmi od veci výmysel. Dalo by sa to spraviť ako jemne modifikovaný bin. vyhľ. strom.
Pri vkladaní doprava by to ale chcelo ošetriť tú šípku doprava hore cez hĺbku vkladaného uzlu a to by mohlo byť pekne hnusné.
Veď ono čo tam majú písanú implementáciu poľom tak to dáva ako taký zmysel, že na rozdiel od bin vyhľadávacieho stromu sa to pole plní postupne, čo v podstate je zbytočné...
Ja mám z toho skôr pocit, že každý ten prvok musí odkazovať na všetky 4 susedné, ale ako realizovať vkladanie nových do takejto štruktúry, och...
No ak by to malo byť presne tak, ako na obrázku, tak zostavovať graf by bolo dosť na nič, keďže by sa nedal rozumne prechádzať. Resp. koreň by bol vždy ten najviac naľavo uzol a to už by bolo také pochabšie.
Mňa skôr napadlo spraviť z toho strom a len pridávať hrany medzi uzly. Tam by bol problém len s tými doprava hore pri vkladaní uzlu doprava - musel by si nájsť odpovedajúci uzol v rovnakej hĺbke vpravo od neho.
Príp. po skončení insertu sa môže ešte zmazať nadbytočné hrany a bolo by z toho presne to, čoi na obrázku.
Ale ono to nemusí byť "pospájane" tak ako sú tam tie šípky, tie šípky len znázorňujú smer usporiadania tých prvkov,
tam je problém v tom, že z každého uzla sa musím pri prehľadávaní vedieť dostať do tých vedľajších
plus ten problém s pridávaním a mazaním uzlov z takejto štruktúry
Možno by sa to dalo založiť na nejakom upravenom strome, ale neviem
To nič nemení na tom, čo som písal. Usporiadané je to ako klasický bin. vyhľ. strom (BVS). Narozdiel od BVS to ale má aj spätné hrany do rodičov a tú čudnú hranu doprava hore (ak sa teda chceš dostať do všetkých okolitých uzlov) Toto sa dá poriešiť a podľa mňa relatívne jednoducho
Kto vie, nie je tam uvedené poradie vkladania. Neviem si to veľmi predstaviť a vôbec, ak by som to mal naozaj riešiť, určite to nepostavím na nejakom strome. Len to číslovanie uzlov (od 1 do 13) ma tam sere, že z toho naozaj chce akoby strom. Celé je to divné a zdá sa mi to ako nezmysel.
Mne to celkom pripomina heap, novy prvok capnut na koniec (vpravo dole) a potom to na zaklade nejakych pravidiel hore popresuvat. Dalo by sa to v nejakom poli implementovat, ak vies ktora uroven (H) to je a kolky v poradi (i), vies to adresovat (H+1*(H/2)) + i, alebo nieco podobne a vies si najst aj susedne prvky to je vzdy i-1 a i-ty v urovni H-1 a i-ty a i+1 v urovni H+1.