• 您現在的位置是:首頁 >生活 > 2023-10-27 16:00:20 來源:

    二叉樹前序中序后序口訣(二叉樹前序中序后序)

    導讀 大家好,我是小夏,我來為大家解答以上問題。二叉樹前序中序后序口訣,二叉樹前序中序后序很多人還不知道,現在讓我們一起來看看吧!1、對...

    大家好,我是小夏,我來為大家解答以上問題。二叉樹前序中序后序口訣,二叉樹前序中序后序很多人還不知道,現在讓我們一起來看看吧!

    1、對于例題的后序遍歷的答案是,gdbehfca.

    2、解答過程:

    3、1)定義解釋:樹的遍歷的三種情況,是根據左子樹、右子樹、根這3者的不同訪問次序來定義的。根左右(根先訪問),則為先序遍歷;左根右,則為中序遍歷;左右根,則為后序遍歷。

    4、2)已知先序和中序遍歷結果,求樹的結構和后序遍歷結果:

    5、先序遍歷結果給我們帶來的信息是,根在哪。

    6、中序遍歷結果給我們帶來的信息是,左、右子樹在哪。

    7、所以樹結構的還原過程是,根據先序找到一個根;然后根據這個根和中序遍歷結果找到它的相應的左、右子樹;依次往下。

    8、對于例題而言:

    9、先序遍歷的第一個節點是a,則說明a是整棵樹的根。然后在中序遍歷結果中,由a斷開,找到a的左子樹和右子樹,即dgb是a的左子樹中的節點集合,echf是a的右子樹集合。(dgb)a(echf)

    10、然后開始遞歸求解:還原(dgb)和(echf)

    11、(dgb)的先序遍歷結果是:bdg(從題目中的先序遍歷中,截取)

    12、(dgb)的中序遍歷結果是:dgb(從題目中的中序遍歷中,截取)

    13、所以b為根,(dg)為左子樹,右子樹為空。即(dgb)= (dg)b

    14、同理:(echf)=(e)c(hf)

    15、第3次遞歸:(dg)= d(g);(hf)= (h)f

    16、最后得到的結果就是:

    17、((d(g))b)a ((e)c((h)f))

    18、(在這種表示中,括號的層數代表在樹中的層數)

    19、 a

    20、 b c

    21、 d e f

    22、 g h

    23、根據這個樹,后序遍歷為先左、右,最后根

    24、先訪問(dgb) (echf) 然后是a

    25、(dgb)這棵樹的后序遍歷為gdb

    26、(echf)這棵樹的后序遍歷為ehfc

    27、所以最后結果為gdb ehfc a

    本文到此講解完畢了,希望對大家有幫助。

  • 成人app