minimum length subarray:
解法一:滑动窗口法,先通过移动定right,然后移动定left,更新最小值。时间n,空间1。
解法二:找每个i的right,更新最小值;寻找的时候构造了辅助数组,用了分治。循环用分治,时间是nlogn,空间是n。
needle in haystack:
return就是个函数的结束标志?
while代码块内部建立的变量的作用域:就是while代码块
暴力法 brute force:枚举所有的情况,大量运算不用技巧。
kmp:字符串匹配算法。在暴力法的基础上,利用每次匹配字符串中的信息,加速主串中位置的移动
利用最长前后缀,每次在出现dismatch时,前后缀错位,直接从主串中diamatch处接着开始继续匹配——求最长前后缀:一次求出,放到一个衍生数组里。求的时候,利用已求出的第i-1项的信息,判断第i项和第k+1项就好。