資料結構 二叉樹

2021-08-28 10:12:02 字數 1175 閱讀 4720

1,寫乙個單獨的類,可以進行多種型別的輸入

public class bst> 

}private node root;

private int size;

public bst()

public int size()

public boolean isempty()

// 向二分搜尋樹中新增新的元素e

public void add(e e)

// 向以node為根的二分搜尋樹中插入元素e,遞迴演算法

// 返回插入新節點後二分搜尋樹的根

private node add(node node, e e)

if(e.compareto(node.e) < 0)

node.left = add(node.left, e);

else if(e.compareto(node.e) > 0)

node.right = add(node.right, e);

return node;

}// 看二分搜尋樹中是否包含元素e

public boolean contains(e e)

// 看以node為根的二分搜尋樹中是否包含元素e, 遞迴演算法

private boolean contains(node node, e e)

// 二分搜尋樹的前序遍歷

public void preorder()

// 前序遍歷以node為根的二分搜尋樹, 遞迴演算法

private void preorder(node node)

@override

public string tostring()

// 生成以node為根節點,深度為depth的描述二叉樹的字串

private void generatebststring(node node, int depth, stringbuilder res)

generatebststring(node.left, depth + 1, res);

generatebststring(node.right, depth + 1, res);

}private string generatedepthstring(int depth)

}

這就是生成的二叉樹的原始碼,包含了遍歷,插入,包含等內容

資料結構 二叉樹 反轉二叉樹

include using namespace std define maxsize 1000 struct binary tree node class queue queue queue void queue push binary tree node btn binary tree node ...

《資料結構》 二叉樹

二叉樹 是 n個結點的有限集,它或為空集,或由乙個根結點及兩棵互不相交的 分別稱為該根的左子樹和右子樹的二叉樹組成。二叉樹不是樹的特殊情況,這是兩種不同的資料結構 它與無序樹和度為 2的有序樹不同。二叉樹的性質 1 二叉樹第 i層上的結點數最多為 2 i 1 2 深度為 k的二叉樹至多有 2 k 1...

資料結構 二叉樹

1.二叉樹 二叉樹是一種特殊結構的樹,每個節點中最多有兩個子節點,如圖1所示 圖1 二叉樹 在圖1中的二叉樹裡,a c有兩個子節點,b d有乙個子節點。對於二叉樹還有圖2中的以下情況 圖2 二叉樹的特殊情況 在博文中還介紹了滿二叉樹和完全二叉樹還有其他的特殊二叉樹。2.二叉樹的實現 有兩種實現方式,...