![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
空空學長
非宁静无以致远,非淡泊无以明志
展开
-
数据结构-树型结构及二叉树总结
树型结构 树的定义 树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: 每个节点有零个或多个子节点 没有父节点的节点称为根节点; 每一个非根节点有且只有一个父节点; 除了根节点外,每个子节点可以分为多个不相交的子树。 树的基本术语 若一个结点有子树,那么该...原创 2019-08-18 20:35:33 · 564 阅读 · 0 评论 -
数据结构-图的生成树问题
一、无向图的连通分量和生成树 若图是连通的或强连通的,则从图中某一个顶点出发可以访问到图中所有顶点; 若图是非连通的或非强连通图,则需从图中多个顶点出发搜索访问。而每一次从一个新的起始点出发进行搜索过程中得到的顶点访问序列恰为每个连通分量中的顶点集。 1、生成树 深度优先搜索遍历算法及广度优先搜索遍历算法中遍历图过程中历经边的集合和顶点集合一起构成连通图的极小连通子图。它是连通图的一颗生成树。 生...原创 2019-08-28 10:53:23 · 5429 阅读 · 0 评论 -
数据结构-最短路径
图的最短路径问题 最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。 单源点最短路径是指:给定一个出发点(单源点)和一个有向网G=(V,E),求出源点到其它各顶点之间的最短路径。 迪杰斯特拉(Dijkstr...原创 2019-08-28 14:56:17 · 1379 阅读 · 0 评论 -
数据结构-静态表查找
静态表查找 顺序查找 核心:从数据的第一个元素开始,依次比较,直到找到目标数据或查找失败。 从表中的第一个元素开始,依次与关键字比较 若某个元素匹配关键字,则 查找成功。 若查找到最后一个元素还未匹配关键字,则 查找失败。 特点:顺序查找平均关键字匹配次数为表长的一半,其时间复杂度为O(n),顺序查找的优点是对表无要求,插入数据可在O(1)内完成。缺点是时间复杂度较大,数据规模较大...原创 2019-09-06 11:29:51 · 367 阅读 · 0 评论 -
数据结构-拓扑排序
拓扑排序 1.定义 给出有向图G=(V,E),对于V中的顶点的线性序列(vi1,vi2,…,vin),如果满足如下条件:若在G中从顶点 vi 到vj有一条路经,则在序列中顶点vi必在顶点 vj之前;则称该序列为 G的一个拓扑序列(Topological order)。构造有向图的一个拓扑序列的过程称为拓扑排序(Topological sort)。 2.说明 (1)在AOV网中,若不存在回路,则所有...原创 2019-09-29 17:08:31 · 355 阅读 · 0 评论 -
数据结构-图的遍历问题
图的遍历:从图中某个顶点出发游历图,访遍图中其余顶点,并且使图中的每个顶点仅被访问一次的过程。我们可以设置一个全局型标志数组visited来标志某个顶点是否被访问过,未访问的值为0,访问过的值为1。 深度优先搜索遍历 深度优先搜索遍历类似于树的先序遍历。假定给定图G的初态是所有顶点均未被访问过,在G中任选一个顶点i作为遍历的初始点,则深度优先搜索遍历可定义如下: (1)首先访问顶点i,并将其访问...原创 2019-09-29 17:15:54 · 1899 阅读 · 0 评论 -
数据结构-图的遍历代码
广度优先搜索 1.准备工作:创建一个visited数组,用来记录已被访问过的顶点;创建一个队列,用来存放每一层的顶点;初始化图G。 2.从图中的v0开始访问,将的visited[v0]数组的值设置为true,同时将v0入队。 3.只要队列不空,则重复如下操作: (1)队头顶点u出队。 (2)依次检查u的所有邻接顶点w,若visited[w]的值为false,则访问w,并将visited[w]置为t...原创 2019-09-29 17:17:27 · 2011 阅读 · 0 评论