二叉樹的遍歷

一、二叉樹

1律秃、二叉樹的概念

二叉樹是每個節(jié)點(diǎn)最多有兩個子樹的樹結(jié)構(gòu)禀晓。通常子樹被稱作“左子樹”(left subtree)和“右子樹”(right subtree)原环,其次序不能任意顛倒。

2贿条、性質(zhì)

(1)若二叉樹的層次從0開始雹仿,則在二叉樹的第i層至多有2^i個結(jié)點(diǎn)(i>=0);

(2)高度為k的二叉樹最多有2^(k+1) - 1個結(jié)點(diǎn)(k>=-1)整以。 (空樹的高度為-1)胧辽;

(3)對任何一棵二叉樹,如果其葉子結(jié)點(diǎn)(度為0)數(shù)為m, 度為2的結(jié)點(diǎn)數(shù)為n, 則m = n + 1公黑。

二邑商、幾種特殊的二叉樹

1、滿二叉樹

所有葉結(jié)點(diǎn)同處于最底層(非底層結(jié)點(diǎn)均是內(nèi)部結(jié)點(diǎn))凡蚜,一個深度為k(>=-1)且有2^(k+1) - 1個結(jié)點(diǎn)人断。如圖(圖來源于veil的博客):

2、完全二叉樹

葉結(jié)點(diǎn)只能出現(xiàn)在最底層的兩層番刊,且最底層葉結(jié)點(diǎn)均處于次底層葉結(jié)點(diǎn)的左側(cè)含鳞。規(guī)模為n的完全二叉樹,高度為

3芹务、平衡二叉樹

平衡二叉樹(Self-balancing binary search tree)又被稱為AVL樹(有別于AVL算法)蝉绷,且具有以下性質(zhì):它是一 棵空樹或它的左右兩個子樹的高度差的絕對值不超過1鸭廷,并且左右兩個子樹都是一棵平衡二叉樹。平衡二叉樹的常用實(shí)現(xiàn)方法有紅黑樹熔吗、AVL辆床、替罪羊樹Treap桅狠、伸展樹等讼载。 最小二叉平衡樹的節(jié)點(diǎn)的公式如下 F(n)=F(n-1)+F(n-2)+1 這個類似于一個遞歸的數(shù)列,可以參考Fibonacci(斐波那契)數(shù)列中跌,1是根節(jié)點(diǎn)咨堤,F(xiàn)(n-1)是左子樹的節(jié)點(diǎn)數(shù)量,F(xiàn)(n-2)是右子樹的節(jié)點(diǎn)數(shù)量漩符。

對于平衡二叉樹要特別注意的是一喘,不要求非葉節(jié)點(diǎn)都有兩個子結(jié)點(diǎn),僅要求兩個子樹的高度差的絕對值不超過1嗜暴,或者為空樹凸克。

三、存儲方式

存儲的方式和圖一樣闷沥,有鏈表和數(shù)組兩種萎战,用數(shù)組存訪問速度快,但插入舆逃、刪除節(jié)點(diǎn)操作就比較費(fèi)時了蚂维。實(shí)際中更多的是用鏈來表示二叉樹的。

四颖侄、遍歷方式

三種遍歷方式? 訪問節(jié)點(diǎn)的順序是一致的鸟雏,不同之處在于,有的遍歷流程把訪問到的節(jié)點(diǎn)暫存起來览祖,達(dá)成某種條件后再將節(jié)點(diǎn)輸出孝鹊。約定, 根節(jié)點(diǎn)V, 其左孩子為L, 右孩子為R, 那么遍歷順序可以記為:

Pre-Order Traversal : 到達(dá)一個節(jié)點(diǎn)后展蒂,即刻輸出該節(jié)點(diǎn)的值又活,并繼續(xù)遍歷其左右子樹。?VLR

In-Order Traversal? :? ?到達(dá)一個節(jié)點(diǎn)后锰悼,將其暫存柳骄,遍歷完左子樹后,再輸出該節(jié)點(diǎn)的值箕般,然后遍歷右子樹LVR

Post-Order Traversal:? ?到達(dá)一個節(jié)點(diǎn)后耐薯,將其暫存,遍歷完左右子樹后,再輸出該節(jié)點(diǎn)的值曲初。?LRV

? ? ? ? 先序遍歷体谒,中序遍歷,后序遍歷臼婆,這個“順序”指的是輸出父節(jié)點(diǎn)的順序抒痒,不是訪問的順序,也不是簡單的按照二叉樹“從左往右”颁褂、“從上往下”等故响。

遍歷結(jié)果:

二叉樹的遍歷 (C++實(shí)現(xiàn))_zhhp1001的博客-CSDN博客

二叉樹的幾種類型 - 王大咩的圖書館 - 博客園

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市颁独,隨后出現(xiàn)的幾起案子彩届,更是在濱河造成了極大的恐慌,老刑警劉巖奖唯,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惨缆,死亡現(xiàn)場離奇詭異糜值,居然都是意外死亡丰捷,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進(jìn)店門寂汇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來病往,“玉大人,你說我怎么就攤上這事骄瓣⊥O铮” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵榕栏,是天一觀的道長畔勤。 經(jīng)常有香客問我,道長扒磁,這世上最難降的妖魔是什么庆揪? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮妨托,結(jié)果婚禮上缸榛,老公的妹妹穿的比我還像新娘。我一直安慰自己兰伤,他們只是感情好内颗,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著敦腔,像睡著了一般均澳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天找前,我揣著相機(jī)與錄音筒捺,去河邊找鬼。 笑死纸厉,一個胖子當(dāng)著我的面吹牛系吭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播颗品,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼肯尺,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了躯枢?” 一聲冷哼從身側(cè)響起则吟,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎锄蹂,沒想到半個月后氓仲,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡得糜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年敬扛,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片朝抖。...
    茶點(diǎn)故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡啥箭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出治宣,到底是詐尸還是另有隱情急侥,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布侮邀,位于F島的核電站坏怪,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏绊茧。R本人自食惡果不足惜铝宵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望按傅。 院中可真熱鬧捉超,春花似錦、人聲如沸唯绍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽况芒。三九已至惜纸,卻和暖如春叶撒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背耐版。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工祠够, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人粪牲。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓古瓤,卻偏偏與公主長得像,于是被迫代替她去往敵國和親腺阳。 傳聞我的和親對象是個殘疾皇子落君,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評論 2 354