Krok bublania dohora vieme implementovať v konštantnom čase: stačí porovnať dva prvky a ak treba tak ich vymeniť. Krok bublania dodola vieme implementovať v čase priamo úmernom stupňu spracúvaného vrchola, musíme totiž prezrieť všetkých jeho synov.
Dokopy teda platia nasledovné odhady časovej zložitosti:
Ako teraz dosiahnuť, aby tieto časové zložitosti boli obe malé? A ako dosiahnuť, aby sa nám to celé ľahko implementovalo a aby sme sa nemuseli trápiť napríklad s rôznymi referenciami na synov rôznych vrcholov?
Odpoveď na obe otázky je rovnaká: vhodne si zvolíme tvar našej haldy.
V doterajšom texte sme sa vôbec nezamýšľali nad tým, ako naša halda vyzerá -- či je plytká alebo hlboká, či sú stupne vrcholov malé alebo veľké. Tu však máme úplnú voľnosť: my si môžeme zvoliť taký tvar, ktorý bude mať aj dobré parametre, aj sa nám bude ľahko implementovať.