首页 > 其他 > 详细

【字符串】459. 重复的子字符串

时间:2020-05-03 20:34:39      阅读:60      评论:0      收藏:0      [点我收藏+]

题目:

技术分享图片

 

 

 

解答:

这题有参考别人的想法,换做我确实很难想到,但还是用我自己的话总结下思路吧。

思路大致如下:如果一个非空字符串s可以由它的一个子串重复多次构成,可以理解为s中存在m个子串,那么当两个字符串结合起来变成ss时,字符串s在新字符串ss的第二次位置不等于s的长度(相当于前一个字符串s中有n个子串,在后一个字符串中有m-n个子串,所以此时的位置不等于s的长度);反之,一个非空字符串s不可以由它的一个子串重复多次构成,那么当两个字符串结合起来变成ss时,字符串s在新字符串ss的第二次位置就在后一个字符串首字符的位置,其位置刚好等于s的长度。根据这一特征来判断。

技术分享图片

 

 

1 class Solution {
2 public:
3     bool repeatedSubstringPattern(string s) 
4     {
5         return (s+s).find(s,1)!=s.size();
6     }
7 };

 

【字符串】459. 重复的子字符串

原文:https://www.cnblogs.com/ocpc/p/12823176.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!