二叉樹遍歷過程看不懂 怎么遍歷二叉樹?
怎么遍歷二叉樹?二叉樹是一種非常重要的數(shù)據(jù)結(jié)構(gòu),它的應(yīng)用非常廣泛,并且通過他的改進(jìn)產(chǎn)生了很多重要的樹數(shù)據(jù)結(jié)構(gòu),如紅黑樹、堆等,應(yīng)用價值很高,經(jīng)過深入的研究會有經(jīng)驗,因此,掌握其基本特性和遍歷方法是基礎(chǔ)
怎么遍歷二叉樹?
二叉樹是一種非常重要的數(shù)據(jù)結(jié)構(gòu),它的應(yīng)用非常廣泛,并且通過他的改進(jìn)產(chǎn)生了很多重要的樹數(shù)據(jù)結(jié)構(gòu),如紅黑樹、堆等,應(yīng)用價值很高,經(jīng)過深入的研究會有經(jīng)驗,因此,掌握其基本特性和遍歷方法是基礎(chǔ)在學(xué)習(xí)后續(xù)的數(shù)據(jù)結(jié)構(gòu)時,理論上我們實際上看到的是二叉樹我們可以通過自己畫的圖片來總結(jié)二叉樹的形狀,但是對于初學(xué)者來說理解代碼實現(xiàn)并不容易。樹遍歷使用遞歸的思想。遞歸的本質(zhì)就是循環(huán)和方法調(diào)整。因此,理解二叉樹遍歷的代碼實現(xiàn)最好的方法就是根據(jù)它的遍歷思想畫出自己的圖,一步一步地遍歷,先想想遍歷的過程,然后根據(jù)遞歸的思想,就可以很容易地找出什么時候調(diào)整什么方法,有必要花更多的時間。首先需要了解堆棧的操作和意義,還需要了解遍歷二叉樹的思想。有人用節(jié)點著色來編寫非遞歸算法,即黑、灰、白三種顏色代表節(jié)點的狀態(tài),未被訪問的節(jié)點為白色,未被訪問的節(jié)點為灰色,被訪問的節(jié)點為黑色。對于中間順序遍歷,除非訪問了左子樹,否則需要訪問當(dāng)前節(jié)點,所以依次沿左子樹搜索,找到葉子后訪問,然后退出右堆棧上的元素,并在右子樹上執(zhí)行相應(yīng)的操作,直到堆棧為空。