2016-03-15 24 views
1

我正在學習二叉搜索樹,並有一個問題要求我將東西添加到樹中並繪製它的樣子。在沒有訂單的情況下向二叉搜索樹添加元素

此問題之前的所有內容都指定了類似「假定樹使用字母順序來比較單詞」的內容,但是這次它沒有這樣說。

有沒有默認的排序順序來排序字符串或int時,將它們添加到樹?

對於背景下,它要求我:
畫出下面的二進制搜索 樹會導致增加以下文字到一個空 二叉搜索樹按以下順序的圖片:萊格拉斯,佛羅多,山姆,快樂, 皮平,阿拉貢,金靂,博羅米爾。

回答

1

由於該問題明確指出「二進制搜索樹」,因此您可以在樹中插入節點時使用Lexicographical order (Alphabetical Order)來比較節點。

爲您的示例中的樹看起來像:

         Legolas 


      Frodo             Sam 


    Aaragon    Gimili        Merry 


     Boromir            Pippin 
+0

所以,如果它是不確定的,對於字符串您添加的第一個項目在列表中的OverallRoot,然後使用lexigraphical(字母)順序安排休息根據第一個字母是在你剛剛輸入的那個之前還是之後出現。非常感謝!還有一個問題,如果它是整數,我假設你只是命令他們至少最大,除非另有規定? – user6064023

+1

是的整數,你必須訂購整數是更大的,如果問題只是說「二叉樹」,那麼你可以插入節點任何地方在樹中,但對於「二元搜索樹」它必須有一些訂購財產,以便它搜索一個元素 – uSeemSurprised

+0

謝謝你的答案!他們是非常有幫助 – user6064023