遍歷

前序遍歷

前序遍歷(DLR),是二叉樹遍歷的一種,也叫做先根遍歷、先序遍歷、前序周游,可記做根左右。前序遍歷首先訪問根結點然后遍歷左子樹,最后遍歷右子樹。

前序遍歷首先訪問根結點然后遍歷左子樹,最后遍歷右子樹。在遍歷左、右子樹時,仍然先訪問根結點,然后遍歷左子樹,最后遍歷右子樹。

二叉樹為空則結束返回,否則:

(1)訪問根結點。

(2)前序遍歷左子樹

(3)前序遍歷右子樹 。

前序遍歷

需要注意的是:遍歷左右子樹時仍然采用前序遍歷方法。

如右圖所示二叉樹

前序遍歷結果:ABDECF

已知后序遍歷和中序遍歷,就能確定前序遍歷。

中序遍歷

中序遍歷(LDR)是二叉樹遍歷的一種,也叫做中根遍歷、中序周游。在二叉樹中,中序遍歷首先遍歷左子樹,然后訪問根結點,最后遍歷右子樹。

中序遍歷首先遍歷左子樹,然后訪問根結點,最后遍歷右子樹。若二叉樹為空則結束返回,否則:

(1)中序遍歷左子樹

(2)訪問根結點

(3)中序遍歷右子樹

中序遍歷

如右圖所示二叉樹,中序遍歷結果:DBEAFC

后序遍歷

后序遍歷(LRD)是二叉樹遍歷的一種,也叫做后根遍歷、后序周游,可記做左右根。后序遍歷有遞歸算法和非遞歸算法兩種。在二叉樹中,先左后右再根,即首先遍歷左子樹,然后遍歷右子樹,最后訪問根結點。

后序遍歷首先遍歷左子樹,然后遍歷右子樹,最后訪問根結點,在遍歷左、右子樹時,仍然先遍歷左子樹,然后遍歷右子樹,最后遍歷根結點。即:

二叉樹為空則結束返回,

否則:

(1)后序遍歷左子樹

(2)后序遍歷右子樹

(3)訪問根結點

后序遍歷

如右圖所示二叉樹

后序遍歷結果:DEBFCA

已知前序遍歷和中序遍歷,就能確定后序遍歷。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容