当前位置: 首页 > wzjs >正文

网站开发与iso9001关系网站建设需要考哪些证

网站开发与iso9001关系,网站建设需要考哪些证,vs手表官网,学校网站进不去怎么办1 题目地址 459. 重复的子字符串 - 力扣(LeetCode)459. 重复的子字符串 - 给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。 示例 1:输入: s "abab"输出: true解释: 可由子串 "ab" 重复两次构成…

1 题目地址

459. 重复的子字符串 - 力扣(LeetCode)459. 重复的子字符串 - 给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。 示例 1:输入: s = "abab"输出: true解释: 可由子串 "ab" 重复两次构成。示例 2:输入: s = "aba"输出: false示例 3:输入: s = "abcabcabcabc"输出: true解释: 可由子串 "abc" 重复四次构成。 (或子串 "abcabc" 重复两次构成。) 提示: * 1 <= s.length <= 104 * s 由小写英文字母组成https://leetcode.cn/problems/repeated-substring-pattern/


2 题目说明

给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。

示例 1:

输入: s = "abab"
输出: true
解释: 可由子串 "ab" 重复两次构成。

示例 2:

输入: s = "aba"
输出: false

示例 3:

输入: s = "abcabcabcabc"
输出: true
解释: 可由子串 "abc" 重复四次构成。 (或子串 "abcabc" 重复两次构成。)

提示:

  • 1 <= s.length <= 104
  • s 由小写英文字母组成

3 解题思路

3.1 移动匹配

        当一个字符串(s)是重复的子字符串,那么s+s在去除第1个和末尾字符,依然满足包含s,则表示字符串是重复的子字符串,否则就不是重复的子字符串。

 推演过程:去除s+s的头尾如果是如下情景相等,则可以推演除字符串是有s[0]s[1]s[2]组成

推演过程:去除s+s的头尾如果是如下情景相等,则可以推演除字符串是有s[0]s[1]组成 

3.2 KMP(待补充)

判断字符串中是否出现另外一个字符串,对于这种问题可以使用KMP算法。
KMP算法是一种改进的字符串匹配算法,核心是利用匹配失败后的信息,尽量减少模式串与文本串的匹配次数,当匹配失败的时候回退到上次匹配成功的位置。

KMP算法的可以查看以下讲解:

28-算法打卡-字符串-KMP算法理论-第二十八天-CSDN博客

29-算法打卡-字符串-KMP算法理论2-第二十九天-CSDN博客

如果一个字符串s是由重复子串组成,那么最长相等前后缀不包含的子串一定是字符串s的最小重复子串。 
1  最长相等前后缀不包含的子串的长度比字符串s的一半的长度还大,那一定不是字符串s的重复子串。
2 最长相等前后缀不包含的子串的长度可以被字符串s的长度整除,那么子串一定是最小重复子串
3 最长相等前后缀不包含的子串的长度不被字符串s的长度整除,那么最长相等前后缀不包含的子串一定不是字符串s的最小重复子串。

next[len-1]=9,9就是字符串abcabcabcabc的最长相同前后缀的长度。
len(字符串长度)-next[len-1](最长公共前后缀长度)=12-9=3(最长相同前后缀不包含的子串的长度)
3可以被12(字符串的长度)整除,并且3小于12的一半,所以说明有重复的子字符串(abc)


4 代码编写


4.1 移动匹配

class Solution {public boolean repeatedSubstringPattern(String s) {// 字符串s+sString ss = s + s;// 字符串s+s去除头尾字符String removeS = ss.substring(1, ss.length()-1);// 如果包含字符串s,则表示是子字符串,否则不是子字符串return removeS.contains(s);}}


4.2 KMP

最长公共前后缀不包括的字符为最小重复子串
并且最小重复子串可以被字符的长度整除
满足两种条件即为重复的子字符串

class Solution {public boolean repeatedSubstringPattern(String s) {int len = s.length();int[] next = new int[len];getNext(s, next);// 重复子字符串长度 = 字符长度 - 最长公共前后缀字符串长度int sub = len -  next[len-1];// 重复子字符串长度可以被字符长度整除,即为重复的子字符串if (next[len-1]>0 && len % sub == 0) {return true;} else {return false;}}// 前缀表public void getNext(String s, int[] next) {int j = 0;next[0] = j;for (int i=1; i<s.length(); i++) {while(j>0 && s.charAt(i)!=s.charAt(j)) {j = next[j-1];}if(s.charAt(i)==s.charAt(j)) {j++;}next[i]=j;}}}


文章转载自:

http://fm7A2bSi.mkhwx.cn
http://sDWfPKhP.mkhwx.cn
http://w5YqHtAc.mkhwx.cn
http://sSwWz7NU.mkhwx.cn
http://i6Tdwsv8.mkhwx.cn
http://d2SRp3Ry.mkhwx.cn
http://gLXUGrXA.mkhwx.cn
http://tvuh9rtp.mkhwx.cn
http://13OXMnyw.mkhwx.cn
http://RGpRCfpy.mkhwx.cn
http://2CEfOYSF.mkhwx.cn
http://FgbBroOW.mkhwx.cn
http://YkAiR4A2.mkhwx.cn
http://oXfZN1cN.mkhwx.cn
http://HLSW1gAL.mkhwx.cn
http://hVzkramh.mkhwx.cn
http://bj7QqgsH.mkhwx.cn
http://yBRI9hDq.mkhwx.cn
http://JNruMmjB.mkhwx.cn
http://2Gul4QA3.mkhwx.cn
http://vjfbmJcL.mkhwx.cn
http://3ZMpr6a2.mkhwx.cn
http://VSl8bbMt.mkhwx.cn
http://HFB2bqNz.mkhwx.cn
http://hg6BEKJb.mkhwx.cn
http://OXxzm0io.mkhwx.cn
http://SXGOwiv6.mkhwx.cn
http://fskhtaJq.mkhwx.cn
http://o31Yp2sp.mkhwx.cn
http://sdTewQY1.mkhwx.cn
http://www.dtcms.com/wzjs/641719.html

相关文章:

  • 云南网站新备案制有网站怎样做推广
  • 如何申请开通网站成都做网站的工资多少
  • 网站大全wordpress 插件破解版
  • 网站建设工作分工天津网站制作培训
  • 合适的网站建设的公司怎么找惠州住房和城乡建设局网站
  • 西安推荐企业网站制作平台可视化网页设计
  • 网站网页设计项目计划书网页制作平台是什么
  • 网站建设对企业的好处wordpress 文章列表展示插件
  • 增城网站建设方案四川省住房与城乡建设部网站
  • 什么网站建设最简单网站开发设计作业及代码
  • 福建做网站的公司黄页官网
  • 眉山网站建设兼职做爰全过程免费视频网站
  • 建设行业门户网站建设部人事司网站
  • 太原网站制作小程序一个电商网站开发要多久
  • 电商平台网站开发过程百度做网站的费用
  • 网站后台怎么上传文件分分彩做号网站
  • 养生网站建设免费网站建设收费标准行情
  • 济南定制网站建设申请网站主机
  • 网站幻灯网站建设公司哪家比较好
  • 四会市城乡规划建设局网站沙田网站建设
  • 白云网站(建设信科网络)塘厦镇
  • 欧米伽官方网站手表价格企业网站优化的弊端
  • 网站建设以及推广提案书吴江区经济开发区规建设局网站
  • 营销推广型网站公司可以做音乐mv视频网站
  • 怎么键卖东西的网站wordpress中国最好主题
  • 公司做网站设计要注意网站开发工具 知乎
  • 如何在百度上做公司网站朝阳网站建设 高碑店
  • wordpress插件怎么破解网站seo 优化
  • 企业形象通用网站用路由器做简单的网站
  • 摄影网站的需求分析个人网站 外贸