本文主要是介绍golang 实现 strstr,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题面
实现 strStr() 函数。
分析
- KMP 不用了,高效但反人类
- 排除特殊情况子串为空,返回0,其它未找到返回 -1
- 子串窗口区间同步比对,被查串标识
实现
func strStr(haystack string, needle string) int {if len(haystack) < len(needle){return -1}if len(needle)==0 {return 0}rs :=-1for i:=0;i<=len(haystack)-len(needle);i++ {find := truefor j:=0;j<len(needle);j++{if haystack[i+j] != needle[j]{find = falsebreak}}if find {rs = ibreak}}return rs
}
这篇关于golang 实现 strstr的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!