畫(huà)出該二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu) 設(shè)完全二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)中存儲(chǔ)數(shù)據(jù)ABCDE,畫(huà)出該二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)?
設(shè)完全二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)中存儲(chǔ)數(shù)據(jù)ABCDE,畫(huà)出該二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)?6. 讓ABCDE存儲(chǔ)在一個(gè)完整的二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)中。要求給出二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)和二叉樹(shù)的前序、中序和后序遍歷序列。實(shí)
設(shè)完全二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)中存儲(chǔ)數(shù)據(jù)ABCDE,畫(huà)出該二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)?
6. 讓ABCDE存儲(chǔ)在一個(gè)完整的二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)中。要求給出二叉樹(shù)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)和二叉樹(shù)的前序、中序和后序遍歷序列。實(shí)際上,這句話(huà)沒(méi)有問(wèn)題,因?yàn)槎M(jìn)制數(shù)不一定滿(mǎn)足二進(jìn)制數(shù),但它在最大程度上是二進(jìn)制數(shù)。只有完全二叉樹(shù)滿(mǎn)足每個(gè)非葉,子節(jié)點(diǎn)是二叉的,雙向列表是雙向的,這與無(wú)向樹(shù)完全相同。只要列表的頭和尾沒(méi)有連接,它就是一個(gè)特殊的二叉樹(shù)——鏈表
鏈表結(jié)構(gòu)的優(yōu)點(diǎn)是易于尋址。二進(jìn)制列表的缺點(diǎn)是結(jié)構(gòu)開(kāi)銷(xiāo)隨著數(shù)據(jù)結(jié)構(gòu)的大小而增加(特別是葉節(jié)點(diǎn)有兩個(gè)空值,即丟失2*sizeof(ElemType*)
線性結(jié)構(gòu)的優(yōu)點(diǎn)是沒(méi)有結(jié)構(gòu)開(kāi)銷(xiāo),缺點(diǎn)是不方便插入和刪除?
試用情況的估計(jì)取決于問(wèn)題的大小,即空間復(fù)雜度和時(shí)間復(fù)雜度
兩者的相互轉(zhuǎn)換非常簡(jiǎn)單,只需了解在順序存儲(chǔ)中:
父節(jié)點(diǎn)(currentpos)=(currentpos-1)/2當(dāng)前節(jié)點(diǎn),取下界
左(currentpos)=2*currentpos 1
右(currentpos)=2*currentpos 2
左brother=轉(zhuǎn)換時(shí),只需將鏈存儲(chǔ)結(jié)構(gòu)的數(shù)據(jù)字段的數(shù)據(jù)復(fù)制到順序存儲(chǔ)結(jié)構(gòu)的相應(yīng)位置即可