二叉樹的存儲結構——順序存儲結構


二叉樹的存儲結構

① 順序存儲結構

② 鏈式存儲結構:二叉鏈表;三叉鏈表

 

二叉樹的順序存儲結構實現:按滿二叉樹的結點層次編號,依次存放二叉樹中的數據元素

 

 

存儲的類型定義:

// 二叉樹順序存儲表示
#define MAXTSIZE 100
// TElemType 這里表示的類型,比如 int 型,String 型,都可以替換
Typedef TElemType SqBiTree[MAXTSIZE];
// 再用數組的名字“SqBiTree”定義一個變量
SqBiTree bt;

 

補充:SqBiTree bt;相當於 TElemType bt[MAXTSIZE];

 

例:

 

解決思路:

 

 

 

 

 

 

 

 

二叉樹順序存儲的缺點:

① 一個數組的大小是固定的,如果元素個數變化極大,則不合適;

② 最壞情況,深度為 k 的且有 k 個結點的單支樹需要長度為 2^k - 1 的一維數組

 

 

過於浪費空間。

特點:結點間的關系蘊含在其存儲位置中,浪費空間,適於存滿二叉樹和完全二叉樹

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM