(考研題目)求中序遍歷順序表二叉樹(非二叉鏈表)算法 inorder(t,root) 其中t為順序表,root為根的地址,print輸出值即可


華科的考研題目,寫出順序表二叉樹數據結構,中序遍歷順序表二叉樹(非二叉鏈表)算法 inorder(t,root) 其中t為順序表,root為根的地址,print輸出值即可。不明白為什么給兩個參數t和root,兩個參數不是一樣的意思嗎?

6 个解决方案

#1


順序表用於輸出的?

#2


t只是用於記錄結果吧,也許是最后就把它print...-_-|||

#3


根不是t[0]是t[root - t]?

#4


呵呵, 這個問題好,這里的root可以傳遞參數,這個參數做什么用呢,就是以可以輸出以root為根結點的樹,
比如樹 ABC//DE/G//F///    
這棵樹利用中序遍歷后輸出結果為:C->B->E->G->D->F->A
InorderTraverse(T,root)
假如輸入root為D;
那么就能夠中序輸出以D為根結點的樹(其實也可以說是子樹)
即E->G->D->F;
如果root=A;
就可以把整個樹全部中續遍歷輸出C->B->E->G->D->F->A

這個問題還可以,有點代表性,還有諸如輸出以root為結點的子樹的深度啊,之類的題我認為是必須要會的題目,反正要下工夫才能將數據結構這塊硬骨頭啃下來,做到融會貫通!

#5


t里面是你中序遍利的結果,root是二叉樹的根!

#6


完整的題目:
假定二叉樹的結點為字符類型,用順序表作二叉樹的存儲結構:(1)用C語言寫出二叉樹的類型定義(2)設n個結點的二叉樹為順序表t,根結點的地址(指針)為root,試寫出中序遍歷二叉樹的算法inorder(t.root),其中t和root為形式參數,要求訪問結點時用printf()輸出結點的數據值(3)分析時間復雜度。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



華科的考研題目,寫出順序表二叉樹數據結構,中序遍歷順序表二叉樹(非二叉鏈表)算法 由先序遍歷和中序遍歷構造二叉樹的二叉鏈表代碼 由先序遍歷和中序遍歷構造二叉樹的二叉鏈表代碼 基於C++類和指針實現二叉樹1、二叉樹的定義  二叉樹(Binary Tree)是一種特殊的樹型結構,每個節點至多有兩棵子樹,且二叉樹的子樹有左右之分,次序不能顛倒。  由定義可知,二叉樹中不存在度(結點擁有的子樹數目)大於2的節點。二叉樹形狀如下下圖所示:2、二叉樹的性質(1)在二叉樹中的第i層上至多有2^(i-1)個結點(i>=1)。備注:^表示此方(2)深度為k的二叉樹至多有2^k-1個節點(k>=1)。(3)對任何一棵二叉樹T,如果其終端結點數目為n0,度為2的節點數目為n2,則n0=n2+1。滿二叉樹:深度為k且具有2^k-1個結點的二叉樹。即滿二叉樹中的每一層上的結點數都是最大的結點數。完全二叉樹:深度為k具有n個結點的二叉樹,當且僅當每一個結點與深度為k的滿二叉樹中的編號從1至n的結點一一對應。可以得到一般結論:滿二叉樹和完全二叉樹是兩種特殊形態的二叉樹,滿二叉樹肯定是完全二叉樹,但完全二叉樹不不一定是滿二叉樹。舉例如下圖是所示:(4)具有n個節點的完全二叉樹的深度為log2n+ 1。3、二叉樹的存儲結構  可以采用順序存儲數組和鏈式存儲二叉鏈表兩種方法來存儲二叉樹。經常使用的二叉鏈表方法,因為其非常靈活,方便二叉樹的操作。二叉樹的二叉鏈表存儲結構如下所示:1 typedef struct binary_tree_node2 {3 int elem;4 struct binary_tree_node *left;5 struct binary_tree_node *right;6 }binary_tree_node,*binary_tree;舉例說明二叉鏈表存儲過程,如下圖所示:從圖中可以看出:在還有n個結點的二叉鏈表中有n+1個空鏈域。4、遍歷二叉樹  遍歷二叉樹是按照指定的路徑方式訪問書中每個結點一次,且僅訪問一次。由二叉樹的定義,我們知道二叉數是由根結點、左子樹和右子樹三部分構成的。通常遍歷二叉樹是從左向右進行,因此可以得到如下最基本的三種遍歷方法:(1)先根遍歷(先序遍歷):如果二叉樹為空,進行空操作;否則,先訪問根節點,然后先根遍歷左子樹,最后先根遍歷右子樹。采用遞歸形式實現代碼如下: 以二叉鏈表的方式創建一棵二叉樹,並以非遞歸算法中序輸出;計算二叉樹的繁茂度,並判斷二叉樹是否為完全二叉樹 建立線索二叉鏈表結構,實現二叉樹的中序線索化及中序線索二叉樹的遍歷算法 二叉樹采用二叉鏈表結構表示。設計並實現如下算法:后序遞歸建樹,先序非遞歸遍歷該樹。 順序表和鏈表和二叉樹 基於二叉鏈表的二叉樹的遍歷 題目1485: 二叉鏈表存儲的二叉樹
 
粤ICP备14056181号  © 2014-2020 ITdaan.com