网站建设费可以进广告宣传费吗,使用wordpress的企业,北京到安阳火车票,自动生成设计图欢迎关注点赞评论#xff0c;共同学习#xff0c;共同进步#xff01;
------持续更新蓝桥杯入门系列算法实例--------
如果你也喜欢Java和算法#xff0c;欢迎订阅专栏共同学习交流#xff01;
你的点赞、关注、评论、是我创作的动力#xff01;
-------希望我的文章…欢迎关注点赞评论共同学习共同进步
------持续更新蓝桥杯入门系列算法实例--------
如果你也喜欢Java和算法欢迎订阅专栏共同学习交流
你的点赞、关注、评论、是我创作的动力
-------希望我的文章对你有所帮助-------- 专栏蓝桥杯系列 目录 一、题目描述
二、解题思路
三、代码实现
四、秒杀算法 ! 代码实现 一、题目描述
给定一个非空的字符串 s 检查是否可以通过由它的一个子串重复多次构成。 示例 1: 输入: s abab
输出: true
解释: 可由子串 ab 重复两次构成。示例 2: 输入: s aba
输出: false示例 3: 输入: s abcabcabcabc
输出: true
解释: 可由子串 abc 重复四次构成。 (或子串 abcabc 重复两次构成。)二、解题思路 1、首先题目意思很简单即判断是否是由子串重复构成常规思路是进行枚举遍历。 2、注意其最大子字符串为length/2,即一半因此我们在寻找其可行的子字符串时范围设置为一半即可。 3、进行遍历确定一个初始子串长度为L、 4、再次判断是否能被子串整除可以则开始二重循环逐个字母判断是否相同。 5、一旦出现某个长度的子字符串可以进行重构即返回true否则如果最后仍没有符合条件的即false。 三、代码实现 public boolean repeatedSubstringPattern(String s) {int Lens.length();for (int i1;i*2Len;i){if (Len%i0) {boolean matchtrue;for (int ji;jLen;j){//从最靠近的字符开始逐一比对if (s.charAt(j)!s.charAt(j-i)){matchfalse;break;}}if (matchtrue)return true;}}return false;}
四、秒杀算法 ! 1、假设字符串s是由重复字符串构成的那么把s加倍即ss 2、令Sss去掉S的头字母以及尾字母如果其中包含S即说明s是符合条件的。 3、因此只需要一行代码即可 4、indexOf方法是求字符串某个位置开始匹配目标串的第一个字符的索引值 5、例如sabbcbba, indexOf(bc,3)的值为4 代码实现
class Solution {public boolean repeatedSubstringPattern(String s) {return (s s).indexOf(s, 1) ! s.length();}
}发文不易恳请大佬们高抬贵手 点赞随手点赞是种美德是大佬们对于本人创作的认可 评论往来无白丁是你我交流的的开始 收藏愿君多采撷是大佬们对在下的赞赏