首页 > 代码库 > 二叉查找树的构造
二叉查找树的构造
使二叉树成为二叉查找数的性质是:对于树的每个节点x,它的左子树的所有值小于x项的值,它的右子树的所有值大于x项的值。
怎样构造一棵二叉查找树呢?
首先设置树的数据结构
struct BinaryNode
{
int element;
BinaryNode *left;
BinaryNode *rigth;
BinaryNode(const int &theElement,BinaryNode *lt,BinaryNode *rt)
:element(theElement),left(lt),rigth(rt){}
};
然后用insert函数构造二叉树
void insert(const int &x,BinaryNode *&t)
{
if(t==NULL)
{
t=new BinaryNode(x,NULL,NULL);
}
else if(x<t->element)
{
insert(x,t->left);
}
else if(x>t->element)
{
insert(x,t->rigth);
}
else
;
}
实现例子:
int main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
BinaryNode *root=NULL;
for(int i=0;i<10;i++)
{
insert(a[i],root);
}
return 0;
}
二叉查找树的构造
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。