樹(shù)的基礎(chǔ)知識(shí)别垮,分類便监,特性及存儲(chǔ)結(jié)構(gòu)

  • 樹(shù):n(n>=0)個(gè)結(jié)點(diǎn)的有限集。n=0時(shí)稱為空樹(shù)碳想。在任意一顆非空樹(shù)中:有且僅有一個(gè)特定的稱為根的結(jié)點(diǎn)烧董;當(dāng)n>1時(shí),其余結(jié)點(diǎn)可分為m(m>0)個(gè)互不相交的有限集T1胧奔,T2逊移,….Tm,其中每一個(gè)集合本身又是一顆樹(shù)龙填,并且稱為根的子樹(shù)胳泉。

  • 結(jié)點(diǎn)擁有的子樹(shù)數(shù)稱為結(jié)點(diǎn)的度。度為0的結(jié)點(diǎn)稱為葉結(jié)點(diǎn)或終端結(jié)點(diǎn)岩遗;度不為0的結(jié)點(diǎn)稱為非終端結(jié)點(diǎn)或分支節(jié)點(diǎn)扇商。除根結(jié)點(diǎn)外,分支結(jié)點(diǎn)也稱為內(nèi)部結(jié)點(diǎn)宿礁。樹(shù)的度是樹(shù)內(nèi)部結(jié)點(diǎn)的度的最大值案铺。(即那個(gè)結(jié)點(diǎn)分支最多,度即為它的分支數(shù))

  • 結(jié)點(diǎn)的層次:樹(shù)中結(jié)點(diǎn)的最大層次稱為樹(shù)的深度或高度梆靖。

線性表與樹(shù)在結(jié)構(gòu)上的區(qū)別:

  • 線性結(jié)構(gòu):第一個(gè)數(shù)據(jù)元素:無(wú)前驅(qū)控汉;最后一個(gè)數(shù)據(jù)元素:無(wú)后繼笔诵;中間元素:一個(gè)前驅(qū)一個(gè)后繼
  • 樹(shù)結(jié)構(gòu): 根結(jié)點(diǎn):無(wú)雙親,唯一姑子;葉結(jié)點(diǎn):無(wú)孩子乎婿,可以多個(gè);中間結(jié)點(diǎn):一個(gè)雙親多個(gè)孩子

  • 二叉樹(shù):n(n>=0)個(gè)結(jié)點(diǎn)的有限集合街佑,該集合或者為空集(稱為空二叉樹(shù))谢翎,或者由一個(gè)根結(jié)點(diǎn)和兩棵互不相交的分別稱為根結(jié)點(diǎn)的左子樹(shù)和右子樹(shù)的二叉樹(shù)組成。

二叉樹(shù)特點(diǎn):

1:每個(gè)結(jié)點(diǎn)最多有兩顆子樹(shù)沐旨,所以二叉樹(shù)中不存在度大于2 的結(jié)點(diǎn)岳服;
2:左子樹(shù)和右子樹(shù)是有順序的;
3:即使樹(shù)中某結(jié)點(diǎn)只有一顆子樹(shù)希俩,也要區(qū)分它是左子樹(shù)還是右子樹(shù)

所有的結(jié)點(diǎn)都只有左子樹(shù)的二叉樹(shù)叫左斜樹(shù)吊宋。所有的結(jié)點(diǎn)都是只有右子樹(shù)的二叉樹(shù)叫右斜樹(shù)。


滿二叉樹(shù)特點(diǎn):

1颜武;葉子只能出現(xiàn)在最下一層
2璃搜;非葉子結(jié)點(diǎn)的度一定為2
3;在同樣深度的二叉樹(shù)中鳞上,滿二叉樹(shù)的結(jié)點(diǎn)個(gè)數(shù)最多这吻,葉子數(shù)最多。

完全二叉樹(shù)的特點(diǎn):

1篙议;葉子結(jié)點(diǎn)只能出現(xiàn)在最下兩層唾糯。
2;最下層的葉子一定集中在左部連續(xù)位置鬼贱。
3移怯;倒數(shù)二層,若有葉子結(jié)點(diǎn)这难,一定都在右部連續(xù)位置舟误。
4;如果結(jié)點(diǎn)度為1姻乓,則該結(jié)點(diǎn)只有左孩子嵌溢,即不存在只有右子樹(shù)的情況。
5蹋岩;同樣結(jié)點(diǎn)數(shù)的二叉樹(shù)赖草,完全二叉樹(shù)的深度最小。

二叉樹(shù)的性質(zhì):

  1. 在二叉樹(shù)的第i層上至多有2的(i-1)次方個(gè)結(jié)點(diǎn)剪个⊙砥铮【i>=1】;
  1. 深度為k二叉樹(shù)至多有2的k次方-1個(gè)結(jié)點(diǎn)⊥鹊蹋【k>=1】;
  2. 對(duì)任何一棵二叉樹(shù)T如暖,如果其終端結(jié)點(diǎn)數(shù)(即葉子結(jié)點(diǎn)數(shù))為n0笆檀,度為2的結(jié)點(diǎn)數(shù)為n2,則n0=n2+1;
    具有n個(gè)結(jié)點(diǎn)的完全二叉樹(shù)的深度為 [log以2為底n的對(duì)數(shù)]+1 ([x]表示不大于x的最大整數(shù))盒至;

** 如果對(duì)一棵有n個(gè)結(jié)點(diǎn)的完全二叉樹(shù)(其深度為[log以2為底n的對(duì)數(shù)]+1)的結(jié)點(diǎn)按層序編號(hào)(從第一層到第[log以2為底n的對(duì)數(shù)]+1層酗洒,每層從左到右),對(duì)任一結(jié)點(diǎn)i(1<=i<=n)有:**

  1. 如果i=1枷遂,則結(jié)點(diǎn)i是二叉樹(shù)的根樱衷,無(wú)雙親;如果i>1酒唉,則其雙親是結(jié)點(diǎn)[i/2]
  1. 如果2i>n矩桂,則結(jié)點(diǎn)i無(wú)左孩子(結(jié)點(diǎn)i為葉子結(jié)點(diǎn));否則其左孩子是結(jié)點(diǎn)2i;
  2. 如果2i+1>n痪伦,則結(jié)點(diǎn)i無(wú)右孩子侄榴;否則其右孩子是結(jié)點(diǎn)2i+1;

二叉樹(shù)的存儲(chǔ)結(jié)構(gòu):

  • 順序存儲(chǔ)結(jié)構(gòu)一般只用于完全二叉樹(shù)网沾,二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)是用一維數(shù)組存儲(chǔ)二叉樹(shù)中的結(jié)點(diǎn)癞蚕,并且結(jié)點(diǎn)的存儲(chǔ)位置,就是數(shù)組的下標(biāo)辉哥。

  • 二叉鏈表:鏈表設(shè)計(jì)了一個(gè)數(shù)據(jù)和兩個(gè)指針域(指針域分別存放指向左孩子和右孩子的指針)


二叉樹(shù)遍歷方法:

前序遍歷:若二叉樹(shù)為空桦山,則空操作返回,否則先訪問(wèn)根結(jié)點(diǎn)醋旦,然后前序遍歷左子樹(shù)恒水,再前序遍歷右子樹(shù)。
中序遍歷:若樹(shù)為空饲齐,則空操作返回寇窑,否則從根結(jié)點(diǎn)開(kāi)始(注意并不是先訪問(wèn)根結(jié)點(diǎn)),中序遍歷根結(jié)點(diǎn)的左子樹(shù)箩张,然后是訪問(wèn)根結(jié)點(diǎn)甩骏,最后中序遍歷右子樹(shù)。
后序遍歷:若樹(shù)為空先慷,則空操作返回饮笛,否則從左到右先葉子后結(jié)點(diǎn)的方式遍歷訪問(wèn)左右子樹(shù),最后是訪問(wèn)根結(jié)點(diǎn)论熙。

層序遍歷:若樹(shù)為空福青,則空操作返回,否則從樹(shù)的第一層,也就是根結(jié)點(diǎn)開(kāi)始訪問(wèn)无午,從上而下逐層遍歷媒役,在同一層中,按從左到右的順序?qū)Y(jié)點(diǎn)逐個(gè)訪問(wèn)宪迟。

【已知前序遍歷序列和中序遍歷序列酣衷,可以唯一確定一棵二叉樹(shù)。已知后序遍歷序列和中序遍歷序列次泽,可以唯一確定一棵二叉樹(shù)】

  • 把指向前驅(qū)和后繼的指針?lè)Q為線索穿仪,加上線索的二叉鏈表稱為線索鏈表,相應(yīng)的二叉樹(shù)就稱為線索二叉樹(shù)意荤。

  • 對(duì)二叉樹(shù)以某種次序遍歷使其變?yōu)榫€索二叉樹(shù)的過(guò)程稱作是線索化啊片。線索化的實(shí)質(zhì)是將二叉鏈表中的空指針改為指向前驅(qū)或后繼的線索。線索化的過(guò)程就是在遍歷的過(guò)程中修改空指針的過(guò)程玖像。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末紫谷,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子捐寥,更是在濱河造成了極大的恐慌碴里,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件上真,死亡現(xiàn)場(chǎng)離奇詭異咬腋,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)睡互,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門根竿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人就珠,你說(shuō)我怎么就攤上這事寇壳。” “怎么了妻怎?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵壳炎,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我逼侦,道長(zhǎng)匿辩,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任榛丢,我火速辦了婚禮铲球,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘晰赞。我一直安慰自己稼病,他們只是感情好选侨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著然走,像睡著了一般援制。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上芍瑞,一...
    開(kāi)封第一講書(shū)人閱讀 51,763評(píng)論 1 307
  • 那天晨仑,我揣著相機(jī)與錄音,去河邊找鬼啄巧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛掌栅,可吹牛的內(nèi)容都是我干的秩仆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼猾封,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼澄耍!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起晌缘,我...
    開(kāi)封第一講書(shū)人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤齐莲,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后磷箕,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體选酗,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年岳枷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了芒填。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡空繁,死狀恐怖殿衰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情盛泡,我是刑警寧澤闷祥,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站傲诵,受9級(jí)特大地震影響凯砍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拴竹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一果覆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧殖熟,春花似錦局待、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)舰罚。三九已至,卻和暖如春薛耻,著一層夾襖步出監(jiān)牢的瞬間营罢,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工饼齿, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留饲漾,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓缕溉,卻偏偏與公主長(zhǎng)得像考传,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子证鸥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容