发布时间 : 星期日 文章二叉排序树的建立与删除更新完毕开始阅读3a4d5ae7c1c708a1284a445e
周国庆 《二叉排序树的建立与删除》 第8页 共19页
table(); //调用table函数显示操作列表 printf(\请输入相应操作:\ scanf(\
while(!(menu>=0 && menu<=4)){ //输入序号不存在,操作出错
printf(\操作有问题,请重新输入:\ scanf(\}
while(menu!=0){ //建立循环,选择不同的操作
switch(menu){
case 1:{ //选择操作1,即二叉排序树的创建
printf(\创建二叉树: \\n\ createbst(&root); display(root); printf(\ break; }
case 2:{ //选择操作2,即在二叉排序树中进行
查找
printf(\请输入你想搜索的关键字:\ scanf(\ int t=searchbst(root,data); if(t!=INF){
printf(\查找成功: \ printf(\ }
else printf(\关键字不存在\\n\ break; }
case 3:{ //选择操作3,即在二叉排序树中进行插入
操作
周国庆 《二叉排序树的建立与删除》 第9页 共19页
printf(\请输入你想插入的关键字:\ scanf(\ insertbst(&root,data); display(root); printf(\ break; }
case 4:{ //选择操作4,即在二叉排序树中进行删除
操作
printf(\请输入你想删除的关键字:\ scanf(\ deletebst(root,data); display(root); printf(\ break; } }
printf(\请继续进行相应操作:\ scanf(\ } return 0; }
周国庆 《二叉排序树的建立与删除》 第10页 共19页
4 运行环境及结果
4.1 运行环境
本程序的运行环境为以Windows 7系统PC上的Visual C++ 6.0。
4.2 运行结果
(1)运行程序,显示操作表,如图4.1;
图4.1 操作表图
(2)选择操作1,输入数据个数为6,再依次输入数据2#1#4#3#6#5,其中#表示空格,回车执行,如图4.2;
图4.2 创建二叉排序树图 (3)选择操作2,查找数据元素的关键字5,如图4.3;
图4.3 节点查找图
周国庆 《二叉排序树的建立与删除》 第11页 共19页
(4)选择操作3,输入想插入的关键字8,执行程序如图4.4;
图4.4 节点插入图 (5)选择操作4,输入想要删除的关键字3,执行程序,如图4.5;
图4.5 节点删除图 (6)选择操作0,退出,如图4.6;
图4.6 退出运行图