資料結構與演算法 二叉樹

2021-09-01 23:57:43 字數 1030 閱讀 8230

1.普通二叉樹

treenode

package math;

public class treenode

public void setdata(int data)

public treenode getlchild()

public void setlchild(treenode lchild)

public treenode getrchild()

public void setrchild(treenode rchild)

public treenode(int data, treenode lchild, treenode rchild)

//給出節點查詢,輸入資料值,返回輸入值得節點

public treenode search(int i)else

if(target!=null)

if(rchild!=null)

}return target ;

}}

binarytree

package math;

public class binarytree

public void setroot(treenode root)

public binarytree(treenode root)

//前序遍歷

public void proper(treenode root)

} }

2.順序二叉樹

把陣列看做二叉樹遍歷

package math;

public class arraybinarytree

//順序二叉樹,把陣列作為乙個二叉樹看

public void frontshow(int index)

system.out.println(arr[index]);

if((2*index+1)if((2*index+2)}

}

演算法與資料結構 二叉樹

二叉樹 binary tree 二分樹 二元樹 二叉樹的遞迴定義 或是空樹,或是一棵由乙個根結點和左右子樹組成的樹,且左右子樹也是二叉樹。分枝結點 除葉結點以外的結點。二叉樹的性質 最多 2 h 1 個結點 n2 n0 1 滿二叉樹 所有分枝結點都存在左右子樹,且葉結點都在同一層。完全二叉樹 除最後...

資料結構與演算法 二叉樹

二叉樹是每個節點最多有兩個子樹的樹結構。通常子樹被稱作 左子樹 left subtree 和 右子樹 right subtree 性質1 在二叉樹的第i層上至多有2 i 1 個結點 i 0 性質2 深度為k的二叉樹至多有2 k 1個結點 k 0 性質3 對於任意一棵二叉樹,如果其葉結點數為n0,而度...

演算法與資料結構 二叉樹

樹是一種特殊的資料型別,模擬具有樹狀結構的數的集合 樹的特點 每個節點都有零個或多個子節點 沒有父節點的節點為根節點 每乙個非根節點有且只有乙個父節點 除了根節點外,每個子節點可以分為多個不想交的子樹 樹的術語 節點的度 某個節點所分出的下一級子節點的個數 樹的度 所有節點中,最大的節點的度即為數的...