【100分】【寻找相同子串】

题目描述

【寻找相同子串】

给你两个字符串 t 和 p ,要求从 t 中找到一个和 p 相同的连续子串,并输出该字串第一个字符的下标。

输入描述:

输入文件包括两行,分别表示字符串 t 和 p ,保证 t 的长度不小于 p ,且 t 的长度不超过1000000,p 的长度不超过10000。

输出描述:

如果能从 t 中找到一个和 p 相等的连续子串,则输出该子串第一个字符在t中的下标(下标从左到右依次为1,2,3,…);

如果不能则输出”No”;

如果含有多个这样的子串,则输出第一个字符下标最小的。

示例1 输入输出示例仅供调试,后台判题数据一般不包含示例:

输入:

AVERDXIVYERDIAN

扫描二维码关注公众号,回复: 15950979 查看本文章

RDXI

输出:

4

考点:

  • 字符串匹配
  • 循环遍历

思路:

我们可以使用滑动窗口的思想,在字符串t中从左到右滑动一个长度为p的窗口,每次比较窗口内的字符串与p是否相等。如果找到了相等的连续子串,就返回第一个字符的下标,否则返回"No"。在本例中,我们从字符串t中截取长度为p的子串进行比较,直到找到相等的子串或遍历完整个t。

代码实现&#

猜你喜欢

转载自blog.csdn.net/weixin_54707168/article/details/131972378
今日推荐