A binomiális kupac egy olyan adatstruktúra , amely a „ prioritási sor ” elvont adattípust valósítja meg, amely két tulajdonsággal rendelkező binomiális fák halmaza :
Ezekből a tulajdonságokból két következmény következik. Először is, mindegyik fa gyökerének van a legkisebb kulcsa a csúcsai között. Másodszor, a binomiális kupac csúcsainak teljes száma egyértelműen meghatározza a benne lévő fák méretét. Például egy binomiális kupac csúcsokkal három fából áll, amelyek magassága 3, 2 és 0, illetve 8, 4 és 1 elemből áll (lásd az ábrát).
A következő műveleteket hajtjuk végre időben , ahol n a csúcsok száma:
Így a binomiális kupac egy összevonó kupac , azaz a szabványos prioritási sorműveleteken (hozzáadás, törlés, minimum kivonás, kulcsok megváltoztatása) mellett egy további műveletet is biztosít két kupac egyesítésére.
Fa (adatstruktúra) | |
---|---|
Bináris fák | |
Önkiegyensúlyozó bináris fák |
|
B-fák | |
előtag fák |
|
A tér bináris particionálása | |
Nem bináris fák |
|
A tér felosztása |
|
Más fák |
|
Algoritmusok |
|