数据结构题目57:建立一棵二叉排序树

 我来答
华源网络
2022-07-06 · TA获得超过5578个赞
知道小有建树答主
回答量:2486
采纳率:100%
帮助的人:144万
展开全部

题目: 已知K=(5, 10, 5, 20, 17, 12, 19, 2),建立一棵二叉排序树。

解题思路: 建立二叉排序树的原则:
设K=(k1, k2, k3, ..., kn)为数据元素序列。从ki开始依次取序列中的元素,每取出一个数据元素ki,按下列原则建立二叉排序树的一个结点。
1.若二叉排序树为空,则ki就是二叉排序树的根结点。
2.若二叉排序树非空,则将ki与该二叉排序树的跟结点的值进行比较。若ki小于根结点的值,则将ki插入到根结点的左子树中;否则,将ki插入到根结点的右子树中。
这是一个递归的过程,因为将一个数据元素插入到根结点的左子树或者插入到根结点的右子树,同样需要按照这个原则递归进行。
根据这个原则给出相应的算法。下面给出建立二叉排序树的非递归算法(设二叉排序树采用二叉链表存储结构)

具体算法如下:
(一) 非递归算法

(二)递归算法

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式