1,kmp算法
假如你需要在一个字符串中寻找一个小字符串的的位置。最朴素的匹配算法法就需要一个一个的去匹配然后又需要回溯来看。而kmp算法不需要这样,就假如你以及匹配到需要找的目标字符串的位置而此时已经匹配到第3个字符且是错误的,就说明前两个字符是正确的,假如前两个字符又刚好相等,是不是匹配就不需要再从原来开始匹配而只要从第二个字符开始匹配因为第一个字符与第二个字符相同。
按照这个思想我们可以根据目标字符串来找到一个next数组意思是当当前字符匹配错误时需要跳到第几个字符来匹配。而求next数组又是一大难点。如图二。
就是如此下
2,哈希算法
就是假如你需要在一个班级中报名字并能迅速的找到此人,该如何去实现。就好比如我们的学号就代表我们,要知道我们在不在只要搜索此学号的人到场了没就行。(很好理解把)如下图
但是假如你需要如何把人名存成一个数并让这个数去代表你而且也不能产生重复,就是独立性就是一个难点了,需要自己去做题并深入了解了。