第七章 二叉搜索树(b3)BST:删除

 

转载于:https://www.cnblogs.com/ZHONGZHENHUA/p/10247191.html

7-26 最优二叉搜索树 分数 10 作者 任唯 单位 河北农业大学 设 S={x 1 ​ ,x 2 ​ ,...,x n ​ } 是有序集,且 x 1 ​ <x 2 ​ <...<x n ​ ,表示有序集S的二叉搜索树利用二叉树的结点来存储有序集中的元素。在该二叉搜索树中搜索一个元素x,结果有两种情形: 在二叉搜索树的内结点中找到 x=x i ​ (即找到了实结点),设这种情况的概率为 p i ​ 在二叉搜索树的叶节点中确定 x∈(x i ​ ,x i+1 ​ )(即找到了虚结点),设这种情况的概率为 q i ​ 设根节点的深度为0,存储元素 x i ​ 的结点深度为 c i ​ ,叶节点(x j ​ ,x j+1 ​ )的结点深度为 d j ​ ,在该二叉搜索树中进行一次搜索所需的平均比较次数为 m,那么有公式: m=∑ i=1 n ​ p i ​ (1+c i ​ )+∑ j=0 n ​ q j ​ d j ​ m又称为二叉搜索树 T 的平均路长,本题的要求是对于有序集 S 及其存取概率分布(q 0 ​ ,p 1 ​ ,q 1 ​ ,..,p n ​ ,q n ​ ),在所有表示有序集 S 的二叉搜索树中找出一颗具有最小平均路长的二叉搜索树。 image-20210225215359687.png 输入格式: 第一行给出有序集中的元素数量 n (2<n<10) 第二行给出内结点(实结点)的存取概率分布 p 1 ​ ,..,p n ​ 第三行给出叶节点(虚结点)的存取概率分布 q 0 ​ ,q 1 ​ ,..,q n ​ 输出格式: 第一行输出最小 m ,保留两位小数。 第二行先序遍历输出二叉树,对于实结点输出其编号,对于虚结点输出.,每一个符号后有一个空格,若有多个满足要求的二叉树,则输出根节点编号最小的。 输入样例: 3 0.50 0.1 0.05 0.15 0.1 0.05 0.05 输出样例: 1.50 1 . 2 . 3 . . 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB 栈限制 8192 KB
最新发布
06-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值