二叉樹(shù)鏡像對(duì)稱(chēng) 樹(shù)怎么轉(zhuǎn)化為二叉樹(shù)?
樹(shù)怎么轉(zhuǎn)化為二叉樹(shù)?將樹(shù)轉(zhuǎn)換為二叉樹(shù):①添加行:在兄弟之間添加一行;②擦除行:除去每個(gè)節(jié)點(diǎn)與除左子節(jié)點(diǎn)外的其他子節(jié)點(diǎn)之間的關(guān)系;③旋轉(zhuǎn):以樹(shù)的根節(jié)點(diǎn)為軸順時(shí)針旋轉(zhuǎn)整棵樹(shù)45°,將二叉樹(shù)轉(zhuǎn)換為樹(shù):①加行
樹(shù)怎么轉(zhuǎn)化為二叉樹(shù)?
將樹(shù)轉(zhuǎn)換為二叉樹(shù):①添加行:在兄弟之間添加一行;②擦除行:除去每個(gè)節(jié)點(diǎn)與除左子節(jié)點(diǎn)外的其他子節(jié)點(diǎn)之間的關(guān)系;③旋轉(zhuǎn):以樹(shù)的根節(jié)點(diǎn)為軸順時(shí)針旋轉(zhuǎn)整棵樹(shù)45°,將二叉樹(shù)轉(zhuǎn)換為樹(shù):①加行:如果node是父節(jié)點(diǎn)的左子節(jié)點(diǎn),然后是P的右子節(jié)點(diǎn),右子節(jié)點(diǎn)的右子節(jié)點(diǎn)沿著分支找到的所有右子節(jié)點(diǎn)都與P的父節(jié)點(diǎn)通過(guò)線連接。2擦除:擦除原始二叉樹(shù)中父級(jí)和正確子級(jí)之間的行。三。調(diào)整:按層次排列節(jié)點(diǎn),形成樹(shù)結(jié)構(gòu)
創(chuàng)建二叉樹(shù),分析動(dòng)態(tài)二叉樹(shù),用靜態(tài)二叉表表示。在二叉樹(shù)的動(dòng)態(tài)二叉表結(jié)構(gòu)中,每個(gè)節(jié)點(diǎn)有三個(gè)字段:data、lchild和rchild。靜態(tài)二叉列表使用數(shù)組作為存儲(chǔ)空間,每個(gè)數(shù)組元素存儲(chǔ)一個(gè)二叉樹(shù)節(jié)點(diǎn),并且還有三個(gè)字段:data、lchild、rchild。Lchild和rdhild分別用于存儲(chǔ)左、右子級(jí)的下標(biāo)。
如何將動(dòng)態(tài)二叉樹(shù)轉(zhuǎn)換為靜態(tài)二叉鏈表?
一般樹(shù)在滿足樹(shù)的條件下可以是任意形狀,一個(gè)節(jié)點(diǎn)可以有任意數(shù)量的子節(jié)點(diǎn),但是二叉樹(shù)的每個(gè)節(jié)點(diǎn)最多只能有兩個(gè)子節(jié)點(diǎn),即左右子節(jié)點(diǎn)。顯然,一般樹(shù)的處理要比二叉樹(shù)復(fù)雜得多,一般樹(shù)可以通過(guò)某種方式轉(zhuǎn)化為二叉樹(shù),操作起來(lái)很方便
~]。存儲(chǔ)結(jié)構(gòu)值為:假設(shè)節(jié)點(diǎn)在數(shù)組中的位置為I,則其左子位置為2I,右子位置為2i1。(I從1開(kāi)始)。所以您只需要?jiǎng)?chuàng)建一個(gè)數(shù)組,從鏈?zhǔn)酱鎯?chǔ)的根節(jié)點(diǎn)開(kāi)始,按中間順序遍歷樹(shù),然后按中間順序存儲(chǔ)在數(shù)組中。這樣就可以改變順序存儲(chǔ)結(jié)構(gòu)。你可以查看相關(guān)的遍歷信息,按遍歷的順序即訪問(wèn)的順序是左子根右子。希望能對(duì)你有所幫助。
如何將樹(shù)轉(zhuǎn)化為二叉樹(shù)?
讓我們首先解釋一下鏡像對(duì)稱(chēng)的概念。顧名思義,就像一個(gè)人站在鏡子前面對(duì)自己。他看到的一切都是對(duì)稱(chēng)的。鏡子中的倒影與真人的頭部相同,但倒影的右臂與真人的左臂相對(duì)應(yīng),反之亦然。
例如,二叉樹(shù)[1,2,2,3,4,4,3]是對(duì)稱(chēng)的。