b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

构造二叉排序树_序列构造二叉排序树_构造二叉排序树代码(5)

电脑杂谈  发布时间:2017-01-01 20:02:07  来源:网络整理

else//继续查找右子树

returndelete_BSTree(pTree->rchild,key);

}

}

/*

根据所给的长为len的arr数组,按数组中元素的顺序构建一棵二叉排序树

*/

BSTreecreate_BSTree(int*arr,intlen)

{

BSTreepTree=NULL;

inti;

//按顺序逐个节点插入到二叉排序树中

for(i=0;i<len;i++)

insert(pTree,arr[i]);

returnpTree;

}

/*

递归中序遍历二叉排序树,得到元素从小到大有序排列的序列

*/

voidin_traverse(BSTreepTree)

{

if(pTree)

{

if(pTree->lchild)

in_traverse(pTree->lchild);

printf("%d",pTree->data);

if(pTree->rchild)

in_traverse(pTree->rchild);

}

}

intmain()

{

inti;

intnum;

printf("请输入节点个数:");

scanf("%d",&num);

//输入num个整数

int*arr=(int*)malloc(num*sizeof(int));

printf("请依次输入这%d个整数(必须互不相等):",num);

for(i=0;i<num;i++)

scanf("%d",arr+i);

//中序遍历该二叉排序树,使数据按照从小到大的顺序输出

BSTreepTree=create_BSTree(arr,num);

printf("中序遍历该二叉排序树的结果:");

in_traverse(pTree);

printf("\n");

//查找给定的整数

intkey;

printf("请输入要查找的整数:");

scanf("%d",&key);

if(search(pTree,key))

printf("查找成功\n");

else

printf("查找不到该整数\n");

//插入给定的整数

printf("请输入要插入的整数:");

scanf("%d",&key);

if(insert(pTree,key))

{

printf("插入成功,插入后的中序遍历结果:");

in_traverse(pTree);

printf("\n");

}

else

printf("插入失败,该二叉排序树中已经存在整数%d\n",key);

//删除给定的整数

printf("请输入要删除的整数:");

scanf("%d",&key);

if(delete_BSTree(pTree,key))

{

printf("删除成功,插入后的中序遍历结果:");

in_traverse(pTree);

printf("\n");

}

else

printf("删除失败,该二叉排序树中不存在整数%d\n",key);

return0;

}

测试结果如下:

· 织梦DedeCMS新发布图集排序在最前的方法

· ecshop商品属性排序的问题

· PHP实现操作redis的封装类完整实例

· PHP实现的一致性哈希算法完整实例

· ECSHOP支付方式的显示顺序(排序)能自定

· dedecms教程:织梦list标签按照权重排序


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-24246-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 斋藤千和
      斋藤千和

      第二南海建岛本来是经济发展

    热点图片
    拼命载入中...