数据结构笔记自用
文章平均质量分 62
王道408的数据结构课程与PPT以及一些自己涂涂画画的笔记。
爱吃小酥肉的小波
这个作者很懒,什么都没留下…
展开
-
王道--数据结构第二章 线性表
从头结点出发,通过游标依次往后遍历结点,直至找到我们想要的结点,时间复杂度O(n)。(注意我们这里说的是某一个位序的结点而不是某一个数组下标的结点,位序指的是各个结点在逻辑上的顺序,而这里的数组下表是实际物理存储空间中的位置顺序)可以在初始化静态链表的时候将空结点的游标next设置为特殊值,如-2,因此如果判断结点的游标next为-2时,就知道该节点是空闲的,可以用来存储新的数据元素。因此删除数据的时候也要记得将删除结点的游标next设置为-2,表示该点被回收了。1.找到一个空的结点,用来存放新节点。原创 2023-04-15 15:20:33 · 42 阅读 · 0 评论 -
王道--数据结构第三章 栈、队列和数组
用顺序存储的方式实现栈:栈的大小不可改变在做题过程中一定要指向的是栈顶元素的位置还是栈顶元素之后的那个位置。代码3.1.110可以通过的方式提高一整片分配给栈的空间的利用率逻辑上实现了两个栈,但物理上他们又是占用了同一片的存储空间,能够提高空间资源的利用率10。原创 2023-04-16 12:03:58 · 88 阅读 · 0 评论 -
王道--数据结构第四章 串
KMP:利用好模式串本身的信息,当发生失配时,判断从哪个位置开始匹配。这个信息只与模式串有关,与主串无关。匹配过程中,当发生不匹配的时候:如果j=1,那么令 j=0, i++, j++;如果 j > 1 ,那么主串 i 的指针不变,j 转化为KMP计算出的位置,继续匹配。用KMP优化之后的串的匹配过程中,主串指针 i 不需要回溯。原创 2023-04-16 16:57:08 · 52 阅读 · 0 评论 -
王道--数据结构第五章 树与二叉树
有三个指针,分别指向父节点、左孩子、右孩子。考研中通常是不带指向父亲节点的指针的,因此。👆空间复杂度为O(h+1)的量级,h是指二叉树的高度,“ +1 ”是因为叶子节点的左右孩子指针指向的NULL也需要递归。当然我们可以把常数项省略,所以空间复杂度为O(h)。原创 2023-04-16 23:11:51 · 107 阅读 · 0 评论 -
王道--数据结构第六章 图
具体看王道6.4_1最小生成树的10min左右。原创 2023-04-22 10:26:35 · 54 阅读 · 0 评论 -
王道--数据结构第七章 查找
红黑树算法演示链接情况1:兄弟够借,借右兄弟的关键字(以删除关键字38为例)情况2:兄弟够借,借左兄弟的关键字情况3:左右兄弟不够借,那就删完之后和兄弟节点合并到同一个节点(例:删除节点49)冲突的发生是不可避免的,我们应该尽可能的减少冲突发生的可能性,因此当我们在设计散列函数的时候,对于给定的关键字集合,我们应该根据关键字集合的特性来确定比较合适的散列函数,让这些关键字能够均匀的散列到各个地址中,分布的越均匀发生的冲突的可能性就越小。原创 2023-05-01 16:46:28 · 152 阅读 · 0 评论 -
王道--数据结构第八章 排序
注意 high+1=low,所以课本上的表述与这里的表述是一致的。原创 2023-12-16 00:13:45 · 394 阅读 · 0 评论 -
C++算法中常用的语法
【代码】C++算法中常用的语法。原创 2023-04-07 23:48:58 · 123 阅读 · 0 评论