2011-10-27 27 views
0

我需要在C中定義一個迭代器結構和方法(對於BST),到目前爲止我意識到迭代器結構必須有一個指向當前節點的指針,並且可能還有一個父節點。還有什麼我應該在那裏,或者那會很好嗎? 謝謝定義BST的迭代器

回答

1

BST元素是否有一個指向他們自己的父節點的指針?如果不是,則需要一堆父節點指針。

+0

我沒有實現他們的指向父節點的指針,雖然我可以,如果這會讓生活更輕鬆? – drunkmonkey

+0

@Sarconi如果它是一種自平衡類型的樹,請使用父指針堆棧 - 它只需要與最大深度一樣大,並且更新每個節點中的父指針會使重新平衡更加複雜。如果不是,那麼你最好在每個節點中放一個父指針,因爲在最壞的情況下,堆棧可能會變得非常大。無論採用哪種方法,走樹都很簡單。 – Dmitri