[考研真题答案]现有关键字序列{45,24,37,53,12,93,47,60},按以下要求完成: (1)根据给定的关键字序列构造一棵二叉查找(排序)树,以二叉链表形式存储,进行中序遍历可以得到从小到

本文介绍如何从给定关键字序列构建二叉查找树,并通过递归函数计算树的叶子节点数量,涉及数据结构与算法设计。
  1. 现有关键字序列{45,24,37,53,12,93,47,60},按以下要求完成: (1)根据给定的关键字序列构造一棵二叉查找(排序)树,以二叉链表形式存储,进行中序遍历可以得到从小到大排列的有序序列,请写出构造过程(不要求算法)。

重庆邮电大学 2018 年攻读硕士学位研究生入学考试试题
注:所有答案必须写在答题纸上,试卷上作答无效 ! 第 6 页 (共 6 页)

(2)在(1)的基础上,请编写一个函数(int LeafCount
(Binary_tree BT)),
求此二叉树的叶子结点个数。 有关的数据结构已描述如下:
typedef struct { //二叉树结点
int data;
Binary_node *left;
Binary_node *right;
}Binary_node,*Binary_tree;

int LeftCount(Binary_tree bt);//计算树bt的叶结点的个数


往年的真题都比较简单
(1)由于只要求构建二叉排序树不要求平衡,在查找失败的位置插入二叉排序树即可
(构造过程要写,我这里省去)
最后应该如图
在这里插入图片描述

(2)没有对系统开销作出限制,那我们可以写递归节约我们答题的时间开销

int LeftCount(Binary_tree bt)
{
   
   
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值