数据结构与算法
zhangkang317
这个作者很懒,什么都没留下…
展开
-
堆排序和大顶堆小顶堆
什么是堆?堆是一种非线性结构,可以把堆看作一个数组,也可以被看作一个完全二叉树,通俗来讲堆其实就是利用完全二叉树的结构来维护的一维数组但堆并不一定是完全二叉树按照堆的特点可以把堆分为大顶堆和小顶堆大顶堆:每个结点的值都大于或等于其左右孩子结点的值小顶堆:每个结点的值都小于或等于其左右孩子结点的值使用堆的原因?如果仅仅是需要得到一个有序的序列,使用排序就可以很快完成,并不需要去组织一个新的数据结构。但是如果我们的需求是对于一个随时会有更新的序列,我要随时知道这个序列的最小值或最大值是什么。显然如果原创 2020-09-06 11:26:44 · 2353 阅读 · 0 评论 -
图
图无向图,结点的简单连接有向图,连接有方向性加权图,连接带有权值加权有向图,连接既有方向性,又带有权值图是由一组顶点和一组能够将两个顶点相连的边组成。常见的地图,电路,网络等都是图的结构。术语顶点:图中的一个点边:连接两个顶点的线段叫做边,edge相邻的:一个边的两头的顶点称为是相邻的顶点度数:由一个顶点出发,有几条边就称该顶点有几度,或者该顶点的度数是几,degree路径...原创 2020-03-31 11:04:49 · 86 阅读 · 0 评论 -
常见数据结构的特点及常见排序算法时间复杂度比较
数据结构的特性:数组:优点物理地址连续,可以高效的进行元素访问。缺点是查找删除时的元素移动导致速度慢,且其内存“大小”固定。有序数组:优点是比无序的数据查找快。缺点是删除和插入慢,大小固定。栈:优点是提供后进先出方式的存取。缺点是存取其他项很慢。队列:提供先进先出方式的存取。缺点是存取其他项很慢。链表:优点是插入快,删除快。缺点是查找慢。二叉树:优点是查找、插入、删除都快(如果树保持平...原创 2020-03-27 15:39:27 · 402 阅读 · 0 评论 -
1软件开发
*1.1 问题分析各需求规格说明使用计算机解决问题需要同时使用硬件和软件。一个计算系统的硬件由实际的物理组件构成,如中央处理器(CPU)、存储器以及组成系统的输入/输出设备等。软件指为了解决问题用来控制硬件操作的程序。软件开发通常包含以下几个阶段:1).问题分析和需求规格说明:对问题进行分析,然后制定一个问题的需求规格说明。2)设计:设计出一个解决问题的计划3)编码:使用某种编程语言来实...原创 2020-02-13 22:02:08 · 153 阅读 · 0 评论