![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
a656418zz
这个作者很懒,什么都没留下…
展开
-
【数据结构】十字链表和邻接多重表的构造图的方法(手动构造非代码)
【十字链表-用于有向图】定点表结点:data:数据内容firstin:以该顶点为尾的第一个弧结点(A→B)firstout:以该顶点为头的第一个弧结点(A→B)实际上对于选边没有一个特定的规则,所以firstin/out的结点可能不同边表结点:tailvex:尾域,表示弧尾。(一般来讲就是顶点表自己)headvex:头域,表示弧头。(如A→B,A尾tailvex,B为headve...原创 2019-10-29 17:26:35 · 385 阅读 · 0 评论 -
【数据结构】树-二叉树的遍历
先序遍历先序遍历过程:1.访问根节点(输出其值)2.持续先序遍历其左子树,直到没有左子树后,退回上一节点3.先序遍历其右子树一次,再回到2不难看出这是类似走迷宫并且还有退回的一个方法,所以不难想到用递归来做。递归实现:每走到一个新的点就将其输出,否则退回上一层的函数中图例:从A开始,先输出A,再往左走,输出B,继续走输出D。D之后的D->Left == NULL,所...原创 2019-03-22 09:57:19 · 145 阅读 · 0 评论 -
【数据结构】树-平衡二叉树的调整(RR,LL,LR,RL)新增代码实现
平衡二叉树的定义:为空树或者它的左子树和右子树都是平衡二叉树,且左子树和右子树的高度差的绝对值不超过1如图,第三个就是错的,因为7的右子树高度为0,左子树高为2,BF(T)= 2不满足要求h=3、4、5类似,谨记:树的左右子树依然是平衡二叉树通过推算能得出:当一个结点数量为N组成的平衡二叉树,其高度能达到logn平衡二叉树的调整:RR旋转对于Mar,May组成的二叉树,然后准...原创 2019-04-09 15:43:51 · 8072 阅读 · 1 评论 -
【数据结构】图的遍历——深度优先搜索DFS、广度优先搜索BFS
深度优先搜索(Depth First Search)DFS给定一个图,里面有8个灯泡,给定一个起点,要求把里面的灯泡全部点亮,请问应该如何操作先给其标注1~8,然后1是起点(已点亮),接下来的步骤是:从1出发,1的连通点为3个:2、5、7,1可以向其中任意一点前进并开灯,假如向2走到了2点,2的连通点为:1、3,由于1已经点亮了并且3没点亮,因此可以向3走到了3点,3的连通点情况与2类...原创 2019-04-20 20:22:55 · 761 阅读 · 0 评论 -
【数据结构】树-堆
1.什么是堆背景:优先队列:特殊的“队列”,取出元素的顺序是依照元素的优先权(关键字)大小,而不是元素进入队列的先后顺序。堆:用完全二叉树进行存储,特点:任何一个结点的值都比其根节点大(小),如果是按照关键字大的来删除,那么直接删除根节点就可以了特性:1.结构性:用数组表示的完全二叉树2.有序性:任一节点的关键字是其子树所有节点的的最大值(或最小值)最大堆(MaxHeap),也称“大顶...原创 2019-04-16 20:06:46 · 335 阅读 · 0 评论 -
【数据结构】图-最短路径问题
最短路径问题的抽象·在网络中,求两个不同顶点之间的所有路径中,边的权值之和最小的那一条路径这条路径就是两点之间的最短路径(shortest path)第一个顶点为源点(source)最后一个顶点为终点(destination)问题分类:单源最短路径问题:从某固定源点出发,求其到所有其他顶点的最短路径。(有向)无权图(有向)有权图多源最短路径问题:求任意两顶点间的最短路径无权图的...原创 2019-05-19 17:21:55 · 5055 阅读 · 1 评论 -
【数据结构】树-哈夫曼树与哈弗曼编码
层层if判断就像是一棵一直往下的树,这种树叫做“判定树”。如果90分以上的人很多,那么想得到grade = 5的结论,在这之前还需要进行4次判断,有点麻烦,还不如直接把这个判断放到if()中,作为首选判断条件更好如果考虑到成绩分布能够计算出平均查找效率就是比例 × 第几次判断 = 3.15修改判定树能优化查找效率,因此可以通过修改判定树来优化查找效率。这就是哈夫曼树的思想A...原创 2019-05-20 16:56:09 · 498 阅读 · 0 评论 -
【数据结构】各种排序算法&各种排序算法的比较
冒泡排序(Bubble Sort):对于一串数字,如3 2 5 9 6 4 1从3的位置开始往后进行 如果被比较数比3小,那么那个数就“浮上去”,即与3进行交换,此时变成 2 3 5 9 6 4 1再从第二个位置开始,即3和5比,顺序正常第三个位置,5和9比,顺序正常第四个位置,9和6比,6比9小,所以6“浮上去”,此时变成2 3 5 6 9 4 1第五个位置,9和4比,4比9小,所...原创 2019-05-25 21:29:32 · 6854 阅读 · 1 评论 -
【数据结构】串的模式匹配(KMP算法)
什么是串线性存储的一组数据特殊操作集:求串的长度比较两串是否相等两串相接求子串插入子串匹配子串删除子串匹配子串目标:给定一段文本string:s0s1……sn-1给定一个模式:pattern = p0p1 …… pm-1求 pattern 在 string 中出现的位置这里的pattern可能会很长,所以直接简单粗暴的那种匹配方式在这里不是特别合适因此可以写一个...原创 2019-05-28 21:26:18 · 428 阅读 · 1 评论