![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
weixin_43288822
这个作者很懒,什么都没留下…
展开
-
学习学习kmp算法
我们看,在查找最大匹配的过程中,将上面选择的待比较的子串分成两部分:最后一个端点为一部分,前面的一段为一部分;比如上面的第一个选取的最大比较子串的例子:前缀的p[0~k-1]分成两段为p[0~k-2]和p[k-1],和后缀的p[j-k+1~j-1]和p[j]分别比较,即p[0~k-2]和p[j-k+1~j-1]比较,p[k-1]和p[j]比较,见图中的红色线段和绿色圆点;通过这个例子我们知道,只要前面一段能重复且尽可能的长,那么加上最后一个端点这个重复子串也必将是最长的。我们继续分析,因为next[j]..原创 2022-03-23 16:35:28 · 251 阅读 · 0 评论 -
数据结构 实现栈和队列
1.顺序存储结构#include<iostream>#include<string>#define MAX 1024using namespace std;typedef int DataType;class Stack{public: Stack(); DataType data[MAX]; int top; void show(); int push(DataType elem); int pop(DataType& elem);};原创 2022-03-22 11:07:43 · 1139 阅读 · 0 评论 -
数据结构 单链表
跟着《大话数据结构》实现单链表。创建链表的时候借鉴了大佬的代码,可以说是直接复制粘贴,#include<iostream>#include<string>using namespace std;typedef int DataType;class Node{public: DataType data; Node* next;};class List{public: Node* head; int lenth = 0; List(); void s原创 2022-03-21 10:58:53 · 754 阅读 · 0 评论