![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 95
数据结构的基本知识点
一汀Yvette
这个作者很懒,什么都没留下…
展开
-
【数据结构】4.6树、森林和并查集
一棵树Tree是由一个或一个以上结点组成的有限集,其中有一个特定的结点Root称为Tree的根结点。集合(Tree-{Root})中的其余结点可被划分为个不相交的子集、...、,其中每个子集都是树,并且其相应的根结点、...、是 Root 的子结点,子集)称为树Tree的子树(subtree),子结点) 称为结点Root的出度。原创 2023-07-21 10:57:33 · 876 阅读 · 1 评论 -
【数据结构】4.5优先队列与堆
优先队列:按照优先级与重要性来组织对象的一种ADT。一种特殊的“队列”,取出元素的顺序是依照元素的优先权(关键字)大小,而不是元素进入队列的先后顺序。生活中的例子:在多用户的环境中,操作系统调度程序必须决定在若干进程中运行哪个进程;发话到打印机中的若个作业可能在某些时候并不想按照先来先打印的方式运行。优先队列需要的操作:1、插入: 增加一个带有重要级别的元素,插入到队列中的位置并不在意2、删除: 队列中的重要级别最高的那个元素3、获得头元素: 队列中的重要级别最高的那个元素。原创 2023-07-21 10:56:05 · 183 阅读 · 1 评论 -
【数据结构】4.4二叉检索树
对于查找问题,可分为静态查找与动态查找,静态查找即二分查找,对于给定的有序数组,不会再增加或删去元素;而动态查找则会在给定数组中增加或删减元素。对于动态查找,则需要使用二叉检索树。二叉检索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树。一棵二叉树,可以为空;如果不为空,其根节点的关键之为k,且满足以下性质:1. 非空左子树的所有键值小于其根结点的关键值k。2. 非空右子树的所有键值等于其根结点的关键值k。3. 左、右子树都是二叉搜索树。原创 2023-07-21 10:55:00 · 183 阅读 · 1 评论 -
【数据结构】4.3 Huffman树
【例】将百分制的考试成绩转换成五分制的成绩,代码如下若学生成绩分布比例如下:计算查找效率,做出判定树:查找效率= 0.05×1+0.15×2+0.4×3+0.3×4+0.1×4 =3.15修改查找代码与判定树形态,得查找效率=0.05×3+0.15×3+0.4×2+0.3×2+0.1× 2=2.2思考:如何根据结点不同的查找频率构造更有效的搜索树?路径长度:两个结点之间路径上的分支数树的外部路径长度:各叶结点到根结点的路径长度之和树的内部路径长度:各非叶结点到根结点的路径长度之和。原创 2023-07-21 10:53:24 · 121 阅读 · 1 评论 -
【数据结构】4.2 树的实现与周游
对于二叉树,定义其结点则可轻松获得整颗二叉树(只需要知道根结点即可)给出二叉树结点的ADT。原创 2023-07-21 10:51:07 · 260 阅读 · 1 评论 -
【数据结构】4.1 树和二叉树的基本概念与性质
n(n≥0)个结点构成的有限集合。当n=0时,称为空树;对于任一棵非空树(n> 0),它具备以下性质:树中有唯一的称为“根(Root)”的特殊结点,用 r 表示;其余结点可分为m(m>0)个互不相交的有限集T1,T2,... ,Tm,其中每个集合本身又是一棵树,称为原来树的“子树(SubTree)”(可见,树的定义是递归的)子树是不相交的;除了根结点外,每个结点有且仅有一个父结点;一棵N个结点的树有N-1条边。每个结点最多只有两棵子树,即二叉树中结点的度只有0、1、2。原创 2023-07-21 10:49:57 · 220 阅读 · 1 评论