已知一组元素(46,25,78,62,12,37,70,29),画出按元素排列顺序输入生成的一棵二叉树。给出过程讲解!

已知一组元素(46,25,78,62,12,37,70,29),画出按元素排列顺序输入生成的一棵二叉树。给出过程讲解!,第1张

先给出答案:

根据二叉排列树的定义:

(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;

(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;

(3)左、右子树也分别为二叉排序树;

简单的说,就是在这棵树中,左子树的值总是小于根结点,右子树的值总是大于根节点。

再看这题,

第一个元素46,把它写下来;

第二个元素25,25比46小,所以写在46左边,成为46的左子树;

第三个元素78,78比46大,所以写在46右边,成为46的右子树;

第四个元素62,62比46大,所以看向它的右边,62比78小,所以写在78的左边;

第五个元素12,12比46小,所以看向它的左边,12比25小,所以写在25的左边;

第六个元素37,37比46小,所以看向它的左边,36比25大,所以写在25的右边;

第七个元素70,70比46大,所以看向它的右边,70比78小,但78已经有了一个左子树62了,所以再将70与62比,所以70写在62的右边;

第八个元素29,29比46小,所以看向它的左边,29比25大,但25已经有了一个右子树37了,所以再将29与37比,所以29写在37的左边。

所以这样看下来,你会发现,对于一个根结点,它左边的值总是比它小,右边的值总是比它大。

决策树分析方法的基本步骤

1绘制决策树图。从左到右的顺序画决策树,此过程本身就是对决策问题的再分析过程。

2按从右到左的顺序计算各方案的期望值,并将结果写在相应方案节点上方。期望值的计算是从右到左沿着决策树的反方向进行计算的。

3对比各方案的期望值的大小,将期望值小的方案(即劣等方案)剪掉,所剩的最后方案为最佳方案。

决策树(简称DT)利用概率论的原理,并且利用一种树形图作为分析工具。其基本原理是用决策点代表决策问题,用方案分枝代表可供选择的方案,用概率分枝代表方案可能出现的各种结果,经过对各种方案在各种结果条件下损益值的计算比较,为决策者提供决策依据。

优点:

1) 可以生成可以理解的规则;

2) 计算量相对来说不是很大;

3) 可以处理连续和种类字段;

4) 决策树可以清晰的显示哪些字段比较重要。

缺点:

1) 对连续性的字段比较难预测;

2) 对有时间顺序的数据,需要很多预处理的工作;

3) 当类别太多时,错误可能就会增加的比较快;

4) 一般的算法分类的时候,只是根据一个字段来分类。

只需记住:第一个元素是根,以后所有的都和这个根做比较,小的在左,大的在右。如果位子上有元素占住了,就和这个占住位置的元素比大小,小的在左,大的在右。如此循环就ok了。
以题目为例:
1、根30
2、插入15,比30小,所以在左子叶
------------30-------
-----------/----\------
---------15-----------
3、插入28,比30小,所以在左子叶,但左子叶已有元素15了,那就继续和15比,比15大,长在其右子叶:
------------30-------
-----------/----\------
---------15----------
-------/----\----------
------------28-------
4、插入20,如第三步所属,比30小,比15大,比28小,所以是28
的左子叶
------------30-------
-----------/----\------
---------15----------
-------/----\
------------30-------
-----------/,长在其右子叶、插入20。
以题目为例,但左子叶已有元素15了只需记住;-------
---------20-----------
5;---\、重复以上过程一直到最后。如此循环就ok了,就和这个占住位置的元素比大小;----\,比30小,比28小、根30
2;----------
------------28-------
4:第一个元素是根,那就继续和15比,比15大,比30小,所以在左子叶;----\,小的在左、插入15,所以是28
的左子叶
------------30-------
-----------/,大的在右,所以在左子叶
------------30-------
-----------/----\、插入28,比30小。如果位子上有元素占住了,以后所有的都和这个根做比较;----\------
---------15----------
-------/,比15大;----\:
1,小的在左;------
---------15-----------
3,如第三步所属;------
---------15----------
-------/,大的在右。;----------
------------28-------
-----------/。

层序遍历为二叉树的根,看中序遍历,a左边的是a的左子树的节点,右边的是右子树节点,看层序,b是a的左子树的根,c是a的右子树的跟(因为c本身就是a的右子树,由第一步可知)依次类推。

一棵空树,或者是具有下列性质的二叉树:

(1)若左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值;

(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;

(3)左、右子树也分别为二叉排序树;

扩展资料:

性质1:二叉树的第i层上至多有2i-1(i≥1)个节点

性质2:深度为h的二叉树中至多含有2h-1个节点

性质3:若在任意一棵二叉树中,有n0个叶子节点,有n2个度为2的节点,则必有n0=n2+1

性质4:具有n个节点的完全二叉树深为log2x+1(其中x表示不大于n的最大整数)

性质5:若对一棵有n个节点的完全二叉树进行顺序编号(1≤i≤n)

参考资料来源:百度百科-二叉树

一个点集合+一个关系集合=一棵树。
树边就是两点间的关系。前面的是父结点,后面的是子结点。
这棵树共有 l,m,n,e,i,b,d,a,g,j,k,c,f,h 共14个结点
照着画吧

按照比较的次数生成判定树,比较1次的是根结点,比较2次的在第二层,比较3次的在第三层,一次类推,也可以说是每次的mid即形成判定树的结点,左子树上的结点是有序表前半部分的所有结点,右子树是后半部分的结点


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13018381.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存