建立二叉樹
#include#includetypedef struct bnodebnode,*bitree;
void createtree(bitree &t)
}
查詢
bitree find_s(bitree t,char x)//查詢元素
return null;
}bitree find(bitree t,char x)//查詢元素(遞迴)
bitree findmin(bitree t)//查詢最小元素
bitree findmin_s(bitree t)//查詢最小元素的遞迴
插入和刪除
bitree inserttree(bitree &t,char x)//插入元素 (遞迴)
if(xdata)
t->left=inserttree(t->left,x);
else if(x>t->data)
t->right=inserttree(t->right,x);
return t;
}bitree inserttree_s(bitree &t,char x)//插入元素
else if(x>q->data)
else return t;
} bitree p=(bitree)malloc(sizeof(bnode));
p->data=x;
p->left=p->right=null;
if(p==null) t=p;
else if(xdata) p->left=p;
else if(x>p->data) p->right=p;
return t;
}bitree deletetree(bitree &t,char x)//刪除元素
else
}return t;
}
二叉樹 二叉查詢樹
構建二叉樹,判斷是否為二叉查詢樹,遞迴先序遍歷,非遞迴中序遍歷 include include include include using namespace std 二叉樹結點 struct treenode 鍊錶結點 struct listnode struct tempnodetempnode...
二叉樹 二叉查詢樹
二叉樹 binary tree 一種樹型結構,每個節點最多擁有兩個節點。如下圖 幾種型別的二叉樹 1.full binary tree 每個節點的孩子數 是 0 或者 2.對高度沒有要求。如下圖 2.perfect binary tree 這個就是最完美的樹,顧名思義,所有葉子節點都有相同的深度,並...
樹(樹,二叉樹,二叉查詢樹)
1.定義 n n 0 個結點構成的有限集合。當n 0時,稱為空樹 2.對於任一棵非空樹 n 0 它具備以下性質 1 樹中有乙個稱為 根 root 的特殊結點,用 r 表示 2 其餘結點可分為m m 0 個互不相交的有限集t1,t2,其中每個集合本身又是一棵樹,稱為原來樹的子樹。3.樹的一些性質 1 ...