




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì)任課教師:劉晉萍Email:785297343@QQ:
785297343第六講樹(shù)和二叉樹(shù)樹(shù)的基本概念樹(shù)的定義樹(shù)的基本術(shù)語(yǔ)二叉樹(shù)二叉樹(shù)的定義二叉樹(shù)的性質(zhì)二叉樹(shù)的基本操作二叉樹(shù)的存儲(chǔ)結(jié)構(gòu)二叉樹(shù)的遍歷樹(shù)與二叉樹(shù)樹(shù)與二叉樹(shù)的轉(zhuǎn)換樹(shù)的遍歷二叉樹(shù)的遍歷二叉樹(shù)的遍歷二叉樹(shù)遍歷的概念二叉樹(shù)的遍歷二叉樹(shù)遍歷的概念二叉樹(shù)遍歷的方法二叉樹(shù)的遍歷二叉樹(shù)遍歷的概念二叉樹(shù)遍歷的方法二叉樹(shù)遍歷的應(yīng)用二叉樹(shù)的遍歷二叉樹(shù)遍歷的概念二叉樹(shù)遍歷的方法二叉樹(shù)遍歷的應(yīng)用二叉樹(shù)遍歷的實(shí)現(xiàn)算法結(jié)束二叉樹(shù)遍歷的概念遍歷的含義訪問(wèn)結(jié)構(gòu)中的所有元素且只訪問(wèn)一次二叉樹(shù)遍歷的定義按一定規(guī)律對(duì)二叉樹(shù)中每個(gè)結(jié)點(diǎn)訪問(wèn)且僅訪問(wèn)一次二叉樹(shù)遍歷的目的在對(duì)二叉樹(shù)的很多處理中,需要二叉樹(shù)結(jié)點(diǎn)的一個(gè)線性序列實(shí)質(zhì)而言,遍歷的目的就是對(duì)二叉樹(shù)進(jìn)行線性化處理,以得到一個(gè)結(jié)點(diǎn)的線性序列對(duì)二叉樹(shù)處理而言,遍歷的目的是為二叉樹(shù)的其他運(yùn)算奠定基礎(chǔ)非線性結(jié)構(gòu)遍歷結(jié)點(diǎn)的訪問(wèn)序列線性化回去二叉樹(shù)遍歷的方法有哪些方法二叉樹(shù)由三個(gè)基本部分組成:根結(jié)點(diǎn)
左子樹(shù)
右子樹(shù)遍歷二叉樹(shù)實(shí)質(zhì)就是完成如下三項(xiàng)工作:訪問(wèn)根結(jié)點(diǎn)D遍歷左子樹(shù)L遍歷右子樹(shù)R這三項(xiàng)工作按順序組合可以得到6種遍歷方案:DLRDRLLDRRDLLRDRLD對(duì)這6種方案加上“先左后右”的限定,則得到如下3種遍歷方案:DLR稱(chēng)為先(根)序遍歷LDR稱(chēng)為中(根)序遍歷LRD稱(chēng)為后(根)序遍歷遍歷方法的描述根左子樹(shù)右子樹(shù)看圖路徑DLRDRLLDRRDLLRDRLDDLRDRLLDRRDLLRDRLDDLR
DRLLDRRDLLRDRLDDLR
DRL
LDR
RDL
LRD
RLD訪問(wèn)根結(jié)點(diǎn)、遍歷左子樹(shù)、遍歷右子樹(shù)訪問(wèn)根結(jié)點(diǎn)、遍歷右子樹(shù)、遍歷左子樹(shù)遍歷左子樹(shù)、訪問(wèn)根結(jié)點(diǎn)、遍歷右子樹(shù)遍歷右子樹(shù)、訪問(wèn)根結(jié)點(diǎn)、遍歷左子樹(shù)遍歷左子樹(shù)、遍歷右子樹(shù)、訪問(wèn)根結(jié)點(diǎn)遍歷右子樹(shù)、遍歷左子樹(shù)、訪問(wèn)根結(jié)點(diǎn)回去二叉樹(shù)遍歷的方法有哪些方法二叉樹(shù)由三個(gè)基本部分組成:根結(jié)點(diǎn)
左子樹(shù)
右子樹(shù)遍歷二叉樹(shù)實(shí)質(zhì)就是完成如下三項(xiàng)工作:訪問(wèn)根結(jié)點(diǎn)D遍歷左子樹(shù)L遍歷右子樹(shù)R這三項(xiàng)工作按順序組合可以得到6種遍歷方案:DLRDRLLDRRDLLRDRLD對(duì)這6種方案加上“先左后右”的限定,則得到如下3種遍歷方案:DLR稱(chēng)為先(根)序遍歷LDR稱(chēng)為中(根)序遍歷LRD稱(chēng)為后(根)序遍歷遍歷方法的描述根左子樹(shù)右子樹(shù)看圖三種遍歷方案的遍歷路徑一樣,只是訪問(wèn)根結(jié)點(diǎn)的時(shí)機(jī)不同二叉樹(shù)遍歷的方法有哪些方法遍歷方法的描述先序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;否則
(1)訪問(wèn)根結(jié)點(diǎn);
(2)先序遍歷左子樹(shù);
(3)先序遍歷右子樹(shù)。中序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;否則
(1)中序遍歷左子樹(shù);
(2)訪問(wèn)根結(jié)點(diǎn);
(3)中序遍歷右子樹(shù)。后序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;否則
(1)后序遍歷左子樹(shù);
(2)后序遍歷右子樹(shù);(3)訪問(wèn)根結(jié)點(diǎn)。根左子樹(shù)右子樹(shù)看例先序序列中序序列后序序列(根、左、右)(左、根、右)(左、右、根)二叉樹(shù)遍歷方法例1先序序列中序序列后序序列ABCDEFGHK待遍歷的二叉樹(shù)根右子樹(shù)左子樹(shù)ABCEFGDHK回去CDBAEHGKFDCBHKGFEA二叉樹(shù)遍歷的應(yīng)用輸出二叉樹(shù)中的所有結(jié)點(diǎn)輸出二叉樹(shù)中的葉子結(jié)點(diǎn)求二叉樹(shù)的深度對(duì)每一個(gè)應(yīng)用問(wèn)題:確定“訪問(wèn)”的具體操作是什么分析對(duì)遍歷順序的要求,確定用先序遍歷、中序遍歷還是后序遍歷給出解決問(wèn)題的算法描述思考練習(xí):用何種遍歷實(shí)現(xiàn)對(duì)二叉樹(shù)左右子樹(shù)的交換?在交換二叉樹(shù)左右子樹(shù)的遍歷中,“訪問(wèn)”操作是什么?寫(xiě)出一個(gè)實(shí)現(xiàn)二叉樹(shù)左右子樹(shù)交換的算法描述。回去先序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;
否則,依次做如下操作:
(1)訪問(wèn)根結(jié)點(diǎn);
(2)先序遍歷左子樹(shù);
(3)先序遍歷右子樹(shù)。輸出二叉樹(shù)中的所有結(jié)點(diǎn)分析:該問(wèn)題需要對(duì)二叉樹(shù)進(jìn)行遍歷,即:對(duì)所有結(jié)點(diǎn)進(jìn)行“訪問(wèn)”,且只訪問(wèn)一次這里的“訪問(wèn)”就是“結(jié)點(diǎn)的輸出”“訪問(wèn)”順序的確定只要能對(duì)所有結(jié)點(diǎn)進(jìn)行輸出,沒(méi)有結(jié)點(diǎn)輸出順序的要求,因此,按先序、中序和后序都可以這里以先序?yàn)槔惴枋觯ɑ谙刃虮闅v)若二叉樹(shù)為空,則空操作;否則,依次做如下操作:
(1)輸出根結(jié)點(diǎn);
(2)輸出左子樹(shù)中的所有結(jié)點(diǎn);
(3)輸出右子樹(shù)中的所有結(jié)點(diǎn)。思考:若基于中序遍歷或基于后序遍歷,則該問(wèn)題的算法應(yīng)該是怎樣的?看例子回去基于中序遍歷基于后序遍歷輸出二叉樹(shù)中的所有結(jié)點(diǎn)算法描述(基于中序遍歷)若二叉樹(shù)為空,則空操作;否則,依次做如下操作:
(1)輸出左子樹(shù)中的所有結(jié)點(diǎn);
(2)輸出根結(jié)點(diǎn);
(3)輸出右子樹(shù)中的所有結(jié)點(diǎn)。中序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;
否則,依次做如下操作:
(1)中序遍歷左子樹(shù);
(2)訪問(wèn)根結(jié)點(diǎn);
(3)中序遍歷右子樹(shù)?;厝ポ敵龆鏄?shù)中的所有結(jié)點(diǎn)算法描述(基于后序遍歷)若二叉樹(shù)為空,則空操作;否則,依次做如下操作:
(1)輸出左子樹(shù)中的所有結(jié)點(diǎn);
(2)輸出右子樹(shù)中的所有結(jié)點(diǎn);
(3)輸出根結(jié)點(diǎn)。后序遍歷二叉樹(shù)若二叉樹(shù)為空,則空操作;
否則,依次做如下操作:
(1)后序遍歷左子樹(shù);
(2)后序遍歷右子樹(shù);
(3)訪問(wèn)根結(jié)點(diǎn)?;厝ポ敵龆鏄?shù)中的所有結(jié)點(diǎn)例ABCEFGDHK待輸出的二叉樹(shù)基于先序遍歷結(jié)點(diǎn)的輸出序列:ABCDEFGHK基于中序遍歷結(jié)點(diǎn)的輸出序列:基于后序遍歷結(jié)點(diǎn)的輸出序列:CDBAEHGKFDCBHKGFEA回去輸出二叉樹(shù)中的葉子結(jié)點(diǎn)分析:該問(wèn)題需要對(duì)二叉樹(shù)中所有結(jié)點(diǎn)進(jìn)行“訪問(wèn)”,且只訪問(wèn)一次這里的“訪問(wèn)”是“帶判斷的輸出”,也就是:“是葉子結(jié)點(diǎn)就輸出”“訪問(wèn)”順序的確定只要能對(duì)所有葉子結(jié)點(diǎn)進(jìn)行輸出,沒(méi)有結(jié)點(diǎn)輸出順序的要求,因此,按先序、中序和后序都可以算法描述若二叉樹(shù)為空,則空操作;否則,依次做如下操作:(1)如果根結(jié)點(diǎn)既沒(méi)有左孩子也沒(méi)有右孩子,則輸出根結(jié)點(diǎn)(2)輸出左子樹(shù)中的葉子結(jié)點(diǎn)(3)輸出右子樹(shù)中的葉子結(jié)點(diǎn)算法描述(基于中序遍歷)算法描述(基于后序遍歷)(基于先序遍歷)思考:該算法是基于先序的?中序的?還是后序的?看例子(1)如果根結(jié)點(diǎn)是葉子結(jié)點(diǎn),則輸出根結(jié)點(diǎn)?;厝ポ敵龆鏄?shù)中的葉子結(jié)點(diǎn)分析:該問(wèn)題需要對(duì)二叉樹(shù)中所有結(jié)點(diǎn)進(jìn)行“訪問(wèn)”,且只訪問(wèn)一次這里的“訪問(wèn)”是“判斷+輸出”,也就是:“是葉子結(jié)點(diǎn)就輸出”需要按某種順序進(jìn)行“訪問(wèn)”只要能對(duì)所有葉子結(jié)點(diǎn)進(jìn)行輸出,沒(méi)有結(jié)點(diǎn)輸出順序的要求,因此,按先序、中序和后序都可以算法描述若二叉樹(shù)為空,則空操作;否則,依次做如下操作:(1)如果當(dāng)前二叉樹(shù)的根既沒(méi)有左孩子也沒(méi)有右孩子,則輸出根結(jié)點(diǎn)(2)輸出左子樹(shù)中的葉子結(jié)點(diǎn)(3)輸出右子樹(shù)中的葉子結(jié)點(diǎn)算法描述(基于中序遍歷)算法描述(基于后序遍歷)(基于先序遍歷)看例子輸出二叉樹(shù)中的葉子結(jié)點(diǎn)分析:該問(wèn)題需要對(duì)二叉樹(shù)中所有結(jié)點(diǎn)進(jìn)行“訪問(wèn)”,且只訪問(wèn)一次這里的“訪問(wèn)”是“判斷+輸出”,也就是:“是葉子結(jié)點(diǎn)就輸出”需要按某種順序進(jìn)行“訪問(wèn)”只要能對(duì)所有葉子結(jié)點(diǎn)進(jìn)行輸出,沒(méi)有結(jié)點(diǎn)輸出順序的要求,因此,按先序、中序和后序都可以算法描述算法描述(基于中序遍歷)若二叉樹(shù)為空,則空操作;否則,依次做如下操作:(1)輸出左子樹(shù)中的葉子結(jié)點(diǎn)(2)如果當(dāng)前二叉樹(shù)的根既沒(méi)有左孩子也沒(méi)有右孩子,則輸出根結(jié)點(diǎn)(3)輸出右子樹(shù)中的葉子結(jié)點(diǎn)算法描述(基于后序遍歷)(基于先序遍歷)看例子輸出二叉樹(shù)中的葉子結(jié)點(diǎn)分析:該問(wèn)題需要對(duì)二叉樹(shù)中所有結(jié)點(diǎn)進(jìn)行“訪問(wèn)”,且只訪問(wèn)一次這里的“訪問(wèn)”是“判斷+輸出”,也就是:“是葉子結(jié)點(diǎn)就輸出”需要按某種順序進(jìn)行“訪問(wèn)”只要能對(duì)所有葉子結(jié)點(diǎn)進(jìn)行輸出,沒(méi)有結(jié)點(diǎn)輸出順序的要求,因此,按先序、中序和后序都可以算法描述算法描述(基于中序遍歷)算法描述(基于后序遍歷)若二叉樹(shù)為空,則空操作;否則,依次做如下操作:(1)輸出左子樹(shù)中的葉子結(jié)點(diǎn)(2)輸出右子樹(shù)中的葉子結(jié)點(diǎn)(3)如果當(dāng)前二叉樹(shù)的根既沒(méi)有左孩子也沒(méi)有右孩子,則輸出根結(jié)點(diǎn)(基于先序遍歷)看例子輸出二叉樹(shù)中的葉子結(jié)點(diǎn)例ABCEFGDHK待輸出的二叉樹(shù)基于先序遍歷葉子結(jié)點(diǎn)的輸出序列:DHKDHKDHK基于后序遍歷葉子結(jié)點(diǎn)的輸出序列:基于中序遍歷葉子結(jié)點(diǎn)的輸出序列:思考:輸出二叉樹(shù)葉子結(jié)點(diǎn)的算法,不論基于先序、中序和后序,葉子結(jié)點(diǎn)的輸出順序都一樣嗎?為什么?回去求二叉樹(shù)的深度二叉樹(shù)深度的定義:結(jié)點(diǎn)的最大層次數(shù)MAX{左子樹(shù)的深度,右子樹(shù)的深度}+1求二叉樹(shù)深度的算法描述:若二叉樹(shù)為空,則返回0;否則,依次做如下操作:求左子樹(shù)的深度lh求右子樹(shù)的深度rh返回max{lh,rh}+1思考:基于什么遍歷順序后序遍歷這里,對(duì)結(jié)點(diǎn)訪問(wèn)的操作是什么求以該結(jié)點(diǎn)為根的二叉樹(shù)的深度根左子樹(shù)右子樹(shù)lhrh二叉樹(shù)的深度?二叉樹(shù)的深度=MAX{lh,rh}+1看例子回去思考:根據(jù)”二叉樹(shù)的深度=MAX{lh,rh}+1“這個(gè)定義,求二叉樹(shù)深度能否按先序或中序進(jìn)行?為什么?求二叉樹(shù)的深度例求二叉樹(shù)深度的算法描述:若二叉樹(shù)為空,則返回0;否則,依次做如下操作:求左子樹(shù)的深度lh求右子樹(shù)的深度rh返回max{lh,rh}+1ABCEFGDHK0120003000000112345回去思考與練習(xí)交換二叉樹(shù)的左右子樹(shù)用何種遍歷實(shí)現(xiàn)對(duì)二叉樹(shù)左右子樹(shù)的交換?在交換二叉樹(shù)左右子樹(shù)的遍歷中,”訪問(wèn)“操作是什么?寫(xiě)出一個(gè)實(shí)現(xiàn)二叉樹(shù)左右子樹(shù)交換的算法描述根據(jù):二叉樹(shù)的深度=MAX{lh,rh}+1
這個(gè)定義,求二叉樹(shù)深度能否按先序或中序進(jìn)行?為什么?輸出二叉樹(shù)葉子結(jié)點(diǎn)的算法,不論基于先序、中序和后序,葉子結(jié)點(diǎn)的輸出順序都一樣嗎?為什么?二叉樹(shù)遍歷的實(shí)現(xiàn)算法先序遍歷的遞歸實(shí)現(xiàn)算法中序遍歷的遞歸實(shí)現(xiàn)算法后序遍歷的遞歸實(shí)現(xiàn)算法解決應(yīng)用問(wèn)題的實(shí)現(xiàn)算法返回P7先序遍歷的遞歸實(shí)現(xiàn)算法先序遍歷以root為根的二叉樹(shù)void
PreOrder(BiTree
root){
if(root!=NULL)
{
Visit(root->data);
/*訪問(wèn)根結(jié)點(diǎn)*/
PreOrder(root->lchild);
/*先序遍歷左子樹(shù)*/
PreOrder(root->rchild);
/*先序遍歷右子樹(shù)*/
}}返回P26中序遍歷的遞歸實(shí)現(xiàn)算法中序遍歷以root為根的二叉樹(shù)void
InOrder(BiTree
root)
{
if(root!=NULL)
{
InOrder(root->lchild);
/*中序遍歷左子樹(shù)*/
Visit(root->data);
/*訪問(wèn)根結(jié)點(diǎn)*/
InOrder(root->rchild);
/*中序遍歷右子樹(shù)*/
}}返回P26后序遍歷的遞歸實(shí)現(xiàn)算法后序遍歷以root為根的二叉樹(shù)void
PostOrder(BiTree
root)
{
if(root!=NULL)
{
PostOrder(root->lchild);/*后序遍歷左子樹(shù)*/
PostOrder(root->rchild);/*后序遍歷右子樹(shù)*
Visit(root->data);
/*訪問(wèn)根結(jié)點(diǎn)*/
}}返回P26解決應(yīng)用問(wèn)題的實(shí)現(xiàn)算法輸出二叉樹(shù)中結(jié)點(diǎn)的實(shí)現(xiàn)算法輸出二叉樹(shù)中葉子結(jié)點(diǎn)的實(shí)現(xiàn)算法求二叉樹(shù)深度的實(shí)現(xiàn)算法二叉樹(shù)的創(chuàng)建算法算法閱讀返回P26輸出二叉樹(shù)中結(jié)點(diǎn)的實(shí)現(xiàn)算法輸出以root為根的二叉樹(shù)中的結(jié)點(diǎn)。基于先序遍歷的實(shí)現(xiàn)算法void
OutBiTree(BiTree
root){
if(root!=NULL)
{
printf(root->data);
/*輸出根結(jié)點(diǎn)*/
OutBiTree(root->lchild);
/*輸出左子樹(shù)中的結(jié)點(diǎn)*/
OutBiTree(root->rchild);
/*輸出右子樹(shù)中的結(jié)點(diǎn)*/
}}返回P30輸出二叉樹(shù)中葉子結(jié)點(diǎn)的實(shí)現(xiàn)算法輸出以root為根的二叉樹(shù)中葉子結(jié)點(diǎn)基于先序遍歷的實(shí)現(xiàn)算法void
OutLeaf(BiTree
root){
if(root!=NULL)
{
if(root->lchild==NULL&&root->rchild==NULL)
printf(root->data);
/*輸出葉子結(jié)點(diǎn)*/
OutLeaf(root->lchild);
/*輸出左子樹(shù)中的葉子結(jié)點(diǎn)*/
OutLeaf(root->rchild);
/*輸出右子樹(shù)中的葉子結(jié)點(diǎn)*/
}}返回P30求二叉樹(shù)深度的實(shí)現(xiàn)算法求以root為根的二叉樹(shù)的深度int
BiTreeDepth(BiTree
root)
{
if(root!=NULL)
{
hl=BiTreeDepth(root->lchild);
/*求左子樹(shù)的深度*/
hr=BiTreeDepth(root->rchild);
/*求右子樹(shù)的深度*/max=hl>hr?hl:hr;
/*得到左、右子樹(shù)深度較大者*/return(max+1);
/*返回樹(shù)的深度*/
}
elsereturn(0);
/*如果是空樹(shù),則返回0*/}返回P30關(guān)于二叉樹(shù)的創(chuàng)建給定一棵二叉樹(shù),可以得到它的遍歷序列反之,給定一棵二叉樹(shù)的遍歷序列,也可以畫(huà)出該二叉樹(shù)能畫(huà)出就意味著能創(chuàng)建二叉樹(shù)已知二叉樹(shù)的“擴(kuò)展的遍歷序列,畫(huà)出該二叉樹(shù)在二叉樹(shù)的遍歷序列中,用特定的元素表示空子樹(shù),就得到相應(yīng)的擴(kuò)展遍歷序列例如,下圖
中二叉樹(shù)的“擴(kuò)展先序遍歷序列”為:AB.DF..G..C.E.H..(這里以‘.’表示空子樹(shù))繼續(xù)關(guān)于二叉樹(shù)的創(chuàng)建畫(huà)出擴(kuò)展先序序列為:ACF.GK..H…B.FE…
的二叉樹(shù)將此過(guò)程作為創(chuàng)建二叉樹(shù)的過(guò)程,即:創(chuàng)建二叉鏈表的過(guò)程則對(duì)應(yīng)此過(guò)程的實(shí)現(xiàn)算法見(jiàn):“利用‘?dāng)U展先序遍歷序列‘創(chuàng)建二叉鏈表的算法”ACFBFGEKH繼續(xù)利用“擴(kuò)展先序遍歷序列”創(chuàng)建二叉鏈表的算法voidCreateBiTree(BiTree
&root){
ch=getchar();
if(ch=='.')root=NULL;
else{root=(BiTree)malloc(sizeof(BiTNode));
root->data=ch;
CreateBiTree(root->lchild);
CreateBiTree(root->rchild);
}}繼續(xù)ABFECFGKHrootACF.GK..H…B.FE…關(guān)于二叉樹(shù)的創(chuàng)建已知某二叉樹(shù)的先序序列和中序序列如下:先序序列:ABDGCEHF
中序序列:BGDAEHCF
畫(huà)出該二叉樹(shù),并寫(xiě)出其后序序列。ABDGCEFH后序序列:GDBHEFCA由先序序列確定根是A由中序序列確定:(1)A有左、右子樹(shù);(2)左子樹(shù)中的結(jié)點(diǎn)有BDG;右子樹(shù)中的結(jié)點(diǎn)有CEFH再由先序序列確定左子樹(shù)的結(jié)點(diǎn)BDG中B是根由中序序列確定B沒(méi)有左子樹(shù),但有右子樹(shù),其中右子樹(shù)中的結(jié)點(diǎn)有DG依此類(lèi)推,直到A的左子樹(shù)的結(jié)構(gòu)確定。用同樣的方法分析右子樹(shù)的結(jié)構(gòu)。繼續(xù)關(guān)于二叉樹(shù)的創(chuàng)建已知某二叉樹(shù)的中序序列和后序序列如下:中序序列:EGHCFAD
后序序列:EGCADFH
畫(huà)出該二叉樹(shù),并寫(xiě)出其先序序列。由后序序列確定根是H由中序序列確定:(1)H有左、右子樹(shù);(2)左子樹(shù)中的結(jié)點(diǎn)有GE;右子樹(shù)中的結(jié)點(diǎn)有FDCA再由后序序列確定左子樹(shù)的結(jié)點(diǎn)GE中G是根,由中序序列確定G有左子樹(shù),但沒(méi)有右子樹(shù),其中左子樹(shù)中的結(jié)點(diǎn)有E。用同樣的方法分析右子樹(shù)的結(jié)構(gòu):根:F且F有左子樹(shù),也有右子樹(shù)。左子樹(shù)有結(jié)點(diǎn):C右子樹(shù)有結(jié)點(diǎn):DA……先序序列:HGEFCDAHGFEDCA繼續(xù)關(guān)于二叉樹(shù)的創(chuàng)建思考:利用二叉樹(shù)的先序和中序或者中序和后序,創(chuàng)建該二叉樹(shù)對(duì)應(yīng)的二叉鏈表的過(guò)程,給出算法
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家人和諧幸福承諾書(shū)電子版范本3篇
- 2025福建省大學(xué)生志愿服務(wù)鄉(xiāng)村振興計(jì)劃工作模擬試卷含答案詳解
- 2025江蘇蘇州國(guó)家歷史文化名城保護(hù)區(qū)、蘇州市姑蘇區(qū)區(qū)屬?lài)?guó)資集團(tuán)副總裁招聘2人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(奪冠系列)
- 客戶代表聘用合同7篇
- 2025年淮南壽縣安徽壽州控股集團(tuán)有限公司人才引進(jìn)10人模擬試卷及答案詳解1套
- 數(shù)據(jù)完備準(zhǔn)確保障責(zé)任承諾書(shū)7篇
- 2025安徽含山縣縣級(jí)公立醫(yī)院招聘緊缺人才13人考前自測(cè)高頻考點(diǎn)模擬試題及1套完整答案詳解
- 銷(xiāo)售合同審核標(biāo)準(zhǔn)化工具快速響應(yīng)版
- 2025福建億力集團(tuán)有限公司所屬單位生招聘98人第三批考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解1套
- 2025江西吉安市井岡山大學(xué)招聘177人考前自測(cè)高頻考點(diǎn)模擬試題附答案詳解(完整版)
- 煤礦班組長(zhǎng)安全培訓(xùn)-萬(wàn)名班組長(zhǎng)培訓(xùn)計(jì)劃教材課件
- 高壓蒸汽滅菌生物指示劑原始記錄
- 電網(wǎng)應(yīng)急指揮的信息管理系統(tǒng)設(shè)計(jì)及技術(shù)關(guān)鍵
- 外發(fā)加工管理制度
- 【獲獎(jiǎng)教學(xué)課件】小學(xué)綜合實(shí)踐活動(dòng)創(chuàng)建自己的閱讀銀行-“閱讀存折”設(shè)計(jì)方案2
- GB/T 42579-2023北斗衛(wèi)星導(dǎo)航系統(tǒng)時(shí)間
- 【超星學(xué)習(xí)通】追尋幸福:中國(guó)倫理史視角(清華大學(xué))章節(jié)答案
- 完整版青少年普法宣傳教育課件
- GB/T 39126-2020室內(nèi)綠色裝飾裝修選材評(píng)價(jià)體系
- GB/T 28726-2012氣體分析氦離子化氣相色譜法
- 企業(yè)降本增效培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論