数据结构--二叉树(Java) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 树的常用术语(结合示意图理解) 节点 根节点 父节点 子节点 叶子节点 (没有子节点的节点) 节点的权(节点值) 路径(从root节点找到该节点的路 ...
分类:
编程语言 时间:
2020-07-30 01:09:31
阅读次数:
89
基本概念 二叉树:一个有穷的结点的集合,这个集合可以为空,若不为空,则它是由根节点和称为其左子树和右子树的两个不相交的二叉树组成。 有几种特殊的二叉树,分别是斜二叉树、完全二叉树和满二叉树。 二叉树的几个重要性质: 一个二叉树第i层的最大结点数为:2^(i-1),i>=1 深度为k的二叉树有最大结点 ...
分类:
其他好文 时间:
2020-07-05 19:34:20
阅读次数:
44
1 数据结构的练习与巩固 2 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ...
分类:
其他好文 时间:
2020-07-04 23:03:47
阅读次数:
67
本章学习中我认识了树。树是一种重要的非线性数据结构,直观地看,它是数据元素按分支关系组织起来的结构,很象自然界中的树那样。树有普通树和二叉树之分,在计算机科学中,二叉树是每个结点最多有两个子树的有序树,二叉树的每个结点至多只有二棵子树,二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2的 ...
分类:
其他好文 时间:
2020-05-31 21:55:35
阅读次数:
68
前文传送门: 「一本正经的聊数据结构(1):时间复杂度」 「一本正经的聊数据结构(2):数组与向量」 「一本正经的聊数据结构(3):栈和队列」 「一本正经的聊数据结构(4):树」 「一本正经的聊数据结构(5):二叉树的存储结构与遍历」 基础知识 感谢某位在后台留言的同学,让我想起来我还有这个没写完的 ...
分类:
其他好文 时间:
2020-05-31 11:22:44
阅读次数:
93
1、二叉树 1.1 为什么需要树这种数据结构 1)数组存储方式的分析 优点:通过下标方式访问元素,速度快。对于有序数组,还可以使用二分查找检索速度。 缺点:如果要检索具体某个值,或者插入值(按一定顺序)回整体移动,效率较低 2)链式存储方式的分析 优点:在一定程度上对数组存储方式有优化(插入一个数值 ...
分类:
其他好文 时间:
2020-05-14 13:24:22
阅读次数:
62
问题描述: 已知字符出现的概率,如何设计为这些字符设计一定长度的位串,使得位串平均长度最短. 前缀码是指,对字符集进行编码时,要求字符集中任一字符的编码都不是其它字符的编码的前缀,而最优前缀码是指平均码长最小的前缀编码。 问题解析: 数据结构:二叉树 哈夫曼树的性质: 1:一共有2n-1个节点,其中 ...
分类:
编程语言 时间:
2020-05-13 09:47:54
阅读次数:
99
1. 二叉树 二叉树的特点: ① 所有非叶子节点至多拥有两个儿子(Left和Right); ② 所有节点存储一个关键字; ③ 非叶子节点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 二叉树的搜索,从根节点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比节 ...
分类:
其他好文 时间:
2020-05-12 17:01:38
阅读次数:
64
前文传送门: "「一本正经的聊数据结构(1):时间复杂度」" "「一本正经的聊数据结构(2):数组与向量」" "「一本正经的聊数据结构(3):栈和队列」" "「一本正经的聊数据结构(4):树」" 存储结构 前面的内容我们介绍了树和二叉树的一些基础概念,树是数据结构中的重中之重,而二叉树又是树结构中的 ...
分类:
其他好文 时间:
2020-05-08 09:36:28
阅读次数:
59
树是一种一对多的数据结构,之前的数组,栈这些都是一对一的数据结构。 树是n个结点的有限集。n=0称空树。在任意一棵非空树中:有且仅有一个根(root)结点;n>1时,其余结点可分为m个互不相交的的有限集,其中每个集合又是一棵树,称为根的子树。 前面三个都是树,最后一个不是树,因为最后一个的数据相交了 ...
分类:
其他好文 时间:
2020-04-19 15:09:10
阅读次数:
73