完全二叉樹一維數組存放的結點相關關系


對於完全二叉樹,如果將其中的元素按層次遍歷順序存放入一個一維數組中:
設數組大小為n(節點數為n),節點標號(key)為數組下標i,即0,1,2,3,4,,,
那么:
1.完全二叉樹的高度為: ceil(log2(n+1))
2.i = 0: 根節點,root,無父節點。
i >= 1: 父節點為 floor((i-1)/2);
3.若2*i<n-1: 節點i的左子女為 2*i + 1
若2*i<n-2: 節點i的右子女為 2*i + 2
4.若節點編號 i 為奇數,i != 1, 它處於右兄弟位置,則它的左兄弟為節點 i-1
5.若節點編號 i 為偶數,i != 1, 它處於左兄弟位置,則它的右兄弟為節點 i+1
6.節點i所在的層次為 floor(log2(i-1))+1;

注意:如果下標表示為1,2,3,,,要注意變換。


免責聲明!

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



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