一、读题和查看相关标签


双指针和字符串匹配成了解题的关键。(还要注意题目要求的返回内容,当没有出现时,要返回 -1;出现了,则只需要返回第一个匹配项的下标)
二、配套函数的介绍和网站的分享
1、在string.h头文件下有这样一个函数strstr

上面所表达的大概含义为:在str1字符串中找str2这个字符串,并返回第一次出现的位置的地址:如果没有找到,则返回NULL。
这是上面网站的地址:cplusplus.com - The C++ Resources Network(在登录按键的下面Legacy version处切换为旧版本)
三、思路及代码实现
1.在题中已经给出char* haystack, char* needle,strstr会返回地址,所以我们要创建一个指针变量来接收strstr的返回值。同时需要创建一个计数器sum,用于记录下标。
2.由于char*haystack是可以改变的,所以通过strstr返回的地址与haystack来比较是否相等,对指针和计数器进行自加,实现指针的移动和下标的记录。
3.代码展示

时间复杂度为O(1)
总结
本道oj题难度来自对strstr的了解和使用。感谢各位的观看,如果对您有所帮助,能否留个免费的赞,我们下期再见。