树、二叉树、森林、哈夫曼树
文章平均质量分 73
fighting123678
这个作者很懒,什么都没留下…
展开
-
数和二叉树
一、基本概念1、树是含有n个结点的有限集合T 。(1) n=0时,称为空树(2)当n>0时,该集合满足如下条件:有且仅有一个特定的称为根(Root)的结点,它没有直接前驱,但有0个或多个直接后继。当n>1时,其余n-1个结点可分为m(m>0)个互不相交的有限集T1,T2,…,T原创 2018-12-23 23:54:25 · 290 阅读 · 0 评论 -
第六章树和二叉树作业1—二叉树(判断和选择)
一、判断题1、答案:T解析:后序:左右根中序:左根右所以说,如果刚好一样的话,只能是二叉树的任何结点都没有右孩子。2、答案:F3、答案:F解析:没有确定二叉树的类型二叉树的类型(1)满二叉树:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点二叉树。(2)完全二叉树(满足下面两个条件)一棵二叉树只有倒数第二层上的结点的度数(每个结点有几个分支,度...原创 2018-12-23 23:58:50 · 569 阅读 · 0 评论 -
第六章树和二叉树作业1—二叉树(函数和编程题)
一、函数题1、求二叉树高度本题要求给定二叉树的高度。函数接口定义:int GetHeight( BinTree BT );其中BinTree结构定义如下:typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementType Data; BinTree Left; ...原创 2018-12-24 00:00:50 · 795 阅读 · 0 评论 -
第六章树和二叉树--树和森林
一、判断题1、答案:F解析:对于任何一棵树,结点总数=总分支数目+1,叶子没有分支数如果某棵树中有N0个结点,K0条边,则N0 = k0 + 1设森林中有m棵树,其结点数分别为n1,n2,n3,.,nm相应地,各棵树的边数分别为k1,k2,k3,…km显然:n1 = k1 + 1,n2 = k2 + 1,.,nm = km + 1 (1)按照题设:n1 + n2 + n3 +…...原创 2018-12-23 23:58:42 · 469 阅读 · 0 评论 -
树和森林
一、树、森林与二叉树的转换1、树转化为二叉树或者是森林转化为二叉树树/森林对应的二叉树,其左、右子树的概念已改变为: 左孩子,右兄弟2、树遍历的三种途径先根(次序)遍历:若树不空,则先访问根结点,然后依次先根遍历各棵子树。(先总根,然后每个分支的根,然后每个分支的左分支,然后每个分支的右分支。)后根(次序)遍历:若树不空,则先依次后根遍历各棵子树,然后访问根结点。(先不访问总根,先访...原创 2018-12-24 00:00:36 · 111 阅读 · 0 评论 -
第六章树和二叉树--Huffman树
一、判断题1、答案:T解析:构造哈夫曼树的过程按从小到大排序选取其根结点的权值为最小的两棵二叉树,分别作为左、右子树构造一棵新的二叉树,并置这棵新的二叉树根结点的权值为其左、右子树根结点的权值之和删去这两棵树,同时加入刚生成的新树的根节点再一次从小到大排序,重复上述过程由建立过程以及最终结果可知,答案是正确单选题1、答案:D解析:完全二叉树是...原创 2018-12-23 23:58:34 · 323 阅读 · 0 评论 -
Huffman树
1、构造哈夫曼树的过程按从小到大排序选取其根结点的权值为最小的两棵二叉树,分别作为左、右子树构造一棵新的二叉树,并置这棵新的二叉树根结点的权值为其左、右子树根结点的权值之和删去这两棵树,同时加入刚生成的新树的根节点再一次从小到大排序,重复上述过程2、带权路径长度(WPL)对于所有的树还有另外的算法就是:一棵树的带权路径长度等于其中所有分支结点的权值之和,也就是除头结点外各节点的...原创 2018-12-23 23:58:14 · 1300 阅读 · 0 评论 -
数据结构 树、森林复习
1、对于任何一种树,如果只有根的话,算是有1个结点或者是有一个叶子。2、层数/深度是从根开始算的3、对于任何一颗树而言(1)在二叉树的第 i 层上至多有2的(i-1)个结点(2)深度为 k 的二叉树上至多含2的k-1个结点(k≥1)根节点的层次为1,如果只有根节点,那么深度也为1;(3)对任何一棵二叉树,若它含有n0 个叶子结点、n2 个度为 2 的结点,则必存在关系式...原创 2018-12-23 23:53:00 · 269 阅读 · 0 评论