2011-10-09 201 views
-5

給出一個節點一個最大的價值,尋找下一個最大的值,一般有兩種情況:二叉樹值

  • 第一:如果節點有一個正確的孩子。如果是這樣,則下一個最大值位於其右側子樹的左側子樹的最左側。

  • 第二:如果節點是一個葉子,那麼下一個最大的值是在它的一個父節點中。它是哪個父母?

謝謝!

+2

SO不是我們爲你做作業的地方。我們可以給你一般的指導,但是我們不會給你作業的答案。向我們展示您迄今爲止所做的工作,並且我們可能會指出您朝着正確的方向發展。 –

+1

有沒有必要居高臨下。這個問題是作爲一個家庭作業問題。也許如果你在你的問題中提到了你在評論中給我寫的所有內容,那麼你就不會坐在-6票上。 –

回答

1

您的第一個案例完全正確。然而,第二種情況應該被替換爲:

2)如果節點沒有正確的孩子(注意:這並不意味着它是一片葉子!),那麼你必須想知道(唯一)路徑從節點到根節點,直到你插入一個大於其子節點的父節點。該父母是下一個較大的節點。如果不存在這樣的父節點,那麼我們開始的節點是樹中最大的節點。

+0

節點只能有一個父節點。我假定你的意思是「前任」,對吧? – svick