二叉排序树的平均查找长度(二叉排序树)
2023-10-17 23:24:06
•
来源:
导读 大家好,我是小东,我来为大家解答以上问题。二叉排序树的平均查找长度,二叉排序树很多人还不知道,现在让我们一起来看看吧!1、 实验目...
大家好,我是小东,我来为大家解答以上问题。二叉排序树的平均查找长度,二叉排序树很多人还不知道,现在让我们一起来看看吧!
1、 实验目的】 由读入数据构造二叉排序树,并进行插入,查找,删除操作。
2、 【设计原理】 二叉排序树:或者是一棵空树,或者是具有下列性质的二叉树: 1. 若它的左子树不空,则右子树上所有结点的值均大于它的根结点的值 2. 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值 3. 它的左,右子树也分别为二叉排序树 【算法描述】 查找:以二叉链表为存储结构,二叉排序树不空时,首先将给定值和根结点的关键字比较,若相等,则查找成功,否则按大小关系,分别在左,右子树上继续查找。
3、 插入:在查找过程中,当树中不存在关键字等于定值的结点时再进行插入。
4、插入的是在叶子结点。
5、 删除:1.若待删结点为叶子结点,即删去该结点。
6、 2.若待删结点只有左或右子树,即将该子树直接连到待删结点的双亲的对应子树。
7、 4. .若待删结点左右子树都不空,则将它中序遍历的直接前驱替代它,再删去这个前驱结点。
8、 【程序清单】 #include #include #define NULL 0 #define MAX 20 struct node {int data; struct node *r,*l; }*head,*inord[MAX]; int count=0; int n=0; myprint(int x,int y,char *s,int tc,int bc) { gotoxy(x,y); textcolor(tc); textbackground(bc); cprintf(s);。
本文到此讲解完毕了,希望对大家有帮助。
免责声明:本文由用户上传,如有侵权请联系删除!