Ano, existuje mnohem lepší způsob. Takzvaný modifikovaný pre-order strom traversal algoritmus. Můžete najít spoustu informací, když si to vygooglíte, a jsem si jistý, že přetečení zásobníku také.
Výhodou je, že můžete načíst celý podstrom pouze pomocí 1 dotazu. SELECTS bude rychlý, ale úpravy jsou těžší.