数据结构
wjy_YF
记录自己学习过程中遇到的问题。
展开
-
【数据结构】KMP算法——C语言实现
要实现KMP算法首先要解决的就是关于next数组的求解方法。KMP算法的精髓便在于这一点上。可是严蔚敏版的数据结构在这一点上解释的不利于理解。下面是一个来自B站的视频,大家可以作为先修知识理解KMP算法的工作原理以及手动求解next数组的方法。https://www.bilibili.com/video/BV1jb411V78H?from=search&seid=975091333872042622理解完成上面的知识,下面就是如何编程实现对子串next数组的求解。这里需要注意的是,**根据严原创 2020-06-04 20:04:10 · 976 阅读 · 0 评论 -
【数据结构】BF算法——C语言实现
BF算法常用于串中的模式匹配,是一个很常见且使用的一种算法。本文将给大家讲述BF算法的C语言实现。参照严蔚敏版的数据结构中有关BF算法中的不太好理解就是,在发生不匹配的情况下,主串返回的位置为:i-j+2。首先这个可以写成i-(j-1)+1,可以将其理解为:不匹配的主串位置减去字串匹配滑动的次数在加上一,这样一来主串接收到返回的位置即为起始匹配位置的下一个位置。也许这样说可能还是不太清楚大家可以试着画一个图,去模拟模式匹配的过程。这里还需要指明的是严版的数据结构在BF算法这里做了一个默认,即默认数组是从1原创 2020-05-31 00:19:41 · 5650 阅读 · 3 评论 -
【数据结构】单链表的实现及其相关操作C/C++
本文将重点讲述单链表的创建以及相关操作的实现。其实在理解链表并不是什么困难的事情,很多人说指针很难,主要是被链表当中的指针的相关操作给难住了。在编写代码的时候需要指针的相关知识。建议大家先熟悉之前学过的指针的相关知识,这样再去理解链表就会变得轻松许多。这里是一个讲解单链表的视频:https://www.bilibili.com/video/BV1Rb411F738?t=2521希望大家可以实际编写相关代码,有助于更好的理解。下面是相关代码的展示:#include<cstdio>#incl原创 2020-05-29 00:03:28 · 291 阅读 · 0 评论 -
【数据结构】实现顺序表及其相关操作C/C++
编译环境:VS code简单说明:C语言中不含有引用类型,所以我使用C++的环境来进行相关代码的编写,这里代码的书写参照的是**严蔚敏版的《数据结构》**下面是相关的代码。#include<cstdio>#include<cstdlib> //#include <stdio.h>#define MAXSIZE 100#define OK 1#define ERROR 0typedef struct{ int data[MAXSIZE];原创 2020-05-24 23:33:33 · 282 阅读 · 0 评论