二叉樹用什么存儲 如何存儲一顆二叉樹?
如何存儲一顆二叉樹?1. 順序存儲結構使用一組具有連續(xù)地址的存儲單元,從上到下、從左到右存儲完整二叉樹的節(jié)點元素。其他二叉樹與完全二叉樹的節(jié)點進行比較,并存儲在一維數(shù)組的相應分量中。2鏈式存儲結構,如
如何存儲一顆二叉樹?
1. 順序存儲結構使用一組具有連續(xù)地址的存儲單元,從上到下、從左到右存儲完整二叉樹的節(jié)點元素。其他二叉樹與完全二叉樹的節(jié)點進行比較,并存儲在一維數(shù)組的相應分量中。2鏈式存儲結構,如二進制列表、三叉戟列表、三線程二叉樹
~]。存儲結構值為:假設節(jié)點在數(shù)組中的位置為I,則其左子位置為2I,右子位置為2i1。(I從1開始)。所以您只需要創(chuàng)建一個數(shù)組,從鏈式存儲的根節(jié)點開始,按中間順序遍歷樹,然后按中間順序存儲在數(shù)組中。這樣就可以改變順序存儲結構。你可以查看相關的遍歷信息,按遍歷的順序即訪問的順序是左子根右子。希望能對你有所幫助。
怎么將二叉樹順序存儲結構圖轉化為二叉樹結構呢?
您的意思是以數(shù)組的形式存儲二叉樹,這需要利用完全二叉樹的特性。完全二叉樹通常用數(shù)組代替鏈表進行存儲,其存儲結構如下:樹:數(shù)組[1.. n] 在樹[i]的最長{n:integer n>=1}中,它具有以下特征:(1)如果i是奇數(shù)且i>=1,則樹的左兄弟是樹[i-1];(2)如果i是偶數(shù)且i