![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
Jayphone17
这个作者很懒,什么都没留下…
展开
-
数据结构——堆,小顶堆,大顶堆,堆排序
1.简介 堆是什么?堆是一种特殊的完全二叉树,就像下面这棵树一样: 这棵树有一个很显著的特点,那就是所有父结点都要比子结点要小。符合这样要求的完全二叉树我们成为“最小堆”。反之,如果所有父结点都要比子结点大,这样的完全二叉树被称为”最大堆“。 2.下移ShiftDown 如果我们现在要删除掉最小的数字,并重新插入一个数字,再从中找出最小的数字。目前只能够先扫描所有的数字,找到最...原创 2019-10-21 18:15:34 · 2899 阅读 · 2 评论 -
数据结构——并查集Union Find Sets
1.问题分析 若某个家族人员过于庞大,要判断两个人是否是亲戚,确实很不容易。给出某个亲戚关系图,现在任意给出两个人,判断其是否具有亲戚关系。规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x和y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也是x的亲戚。 那么如何很快判断两个人是否是亲戚? 2.算法设计 并查集是一种树形的数据结构,用于处理一些不相交集合(Disjoint...原创 2019-10-19 13:21:18 · 295 阅读 · 0 评论 -
数据结构——邻接表Adjacency List
邻接表是图的一种最主要的存储结构,用来描述图上的每一个点。对图的每个顶点建立一个容器,第i个容器中的结点包含顶点Vi的的所有临界顶点。如下图所示,有向图对应的邻接表: 1.数据结构 邻接表用到两个数据结构: (1)一个是头结点表,用一维数组存储。包括顶点和指向第一个邻接点的指针。 (2)一个是每个顶点Vi的所有邻接点构成的一个线性表,用单链表存储。无向图成为顶点...原创 2019-10-04 15:37:41 · 5612 阅读 · 1 评论 -
数据结构——二叉树BinaryTree基本功能大全及代码实现(递归、非递归遍历、深度、结点数)
一、需求分析与功能描述 现代社会生活中,计算机扮演着重要角色,而随着计算机运行速度的不断加快,对数据的处理能力也日益增强,因此,程序所涉及的数据很多,如何科学有效的对数据进行操作,使得计算机的时间和空间利用率最高是一个问题。针对这样的问题,我选择了二叉树对数据的各种操作作为我的课程设计主题,希望通过二叉树来提高对数据的处理能力,促进对数据结构课程的理解。 在二叉树的应用中,常常要求在树中查找...原创 2019-10-05 15:06:17 · 1103 阅读 · 0 评论