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

网站url怎么填写广州seo全网营销

网站url怎么填写,广州seo全网营销,成都网站建设前几公司,如何网站开发3.给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”&…

3.给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。
示例 1:
输入: “abcabcbb”
输出: 3
解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。
示例 2:
输入: “bbbbb”
输出: 1
解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。
示例 3:
输入: “pwwkew”
输出: 3
解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。
请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。

  • 我的思路,遍历字符串,用 hashMap 记录每个字符出现的索引,当出现重复字符时结算一次长度,然后将遍历索引更新到重复字符出现处,以它的后一位为新起点重新计算无重复子串长度。比如 “abcab”,当遍历到 i 为 3 时发现 a 之前有重复过,所以先结算当前长度 3,下一轮重新计算子串长度,并且从 a 后一位即 b 开始重新计算。
  •   public int lengthOfLongestSubstring(String s) {Map<Character,Integer> map = new HashMap<>();int ans = 0;// 计算每一轮子串长度int temp = 0;for(int i=0;i<s.length();i++){char c = s.charAt(i);// 找到重复字符if(map.containsKey(c)){// 让下一轮遍历从最近重复字符下一位开始i = map.get(c);// 记得清空 map,不然直接就又重复了map.clear();// 结算长度ans = Math.max(ans,temp);// 长度归零temp=0;continue;}map.put(c,i);temp++;}ans = Math.max(ans,temp);return ans;}
    
  • 他人解法1:实际上如果以动态规划的角度来看更加清晰明了,设 f(x) 为以字符串第 x 位结尾的最长无重复子串长度(以下简称答案好了)。当计算 f(j) 时,根据本题关键是否有重复字符,就划分成了两种情况,首先假设我当前正在计算长度的子串区间为 i~j,或者形象点 2~5,字符串为 ababcbcd,此时如果在我的区间即 abcb 内有和 x 处即位置 5 处的 b 重复的字符,比如位置 3 处的 b ,那么我这一轮的子串长度就为 5-3 也就是 cb 这一段的长度;否则就说明起码我这段区间没有重复字符,那我就可以在之前的基础上 + 1 了,即 dp[j-1]+1。比如 abcd,我从 a 开始往后找一直没有重复的字符,答案长度就一直累加。
  • 总结一下就是对于 dp[j],设有 s[j] 的最近重复字符 s[i],如果 i 在 dp[j-1] 的区间外(没有重复字符也属于在区间外的情况),即 dp[j-1]<j-i(画两个线段就知道关系了,dp[j-1] 就是当前区间长度 x,j-i 就是重复字符到当前区间尾端的长度 y,y > x 就说明重复字符 i 在当前区间起点左侧,即不在当前区间),那 dp[j] = dp[j-1]+1;否则 dp[j] = j-i
  •   i----------jx------j (dp[j-1])
    
  •   public int lengthOfLongestSubstring(String s) {Map<Character,Integer> map = new HashMap<>();int ans = 0;// temp 其实就是 dp[j-1],不需要定义 dp 数组int temp = 0;for(int j=0;j<s.length();j++){char c = s.charAt(j);// 当前区间没有重复字符就返回 -1,// 因为 dp[j-1] < j 恒成立(因为你最长的情况下,一直没有重复字符长度也才 j-1)// 那 i 取负数的话 dp[j-1] < j-i 也是必定成立的int i = map.getOrDefault(c,-1);map.put(c,j);temp = temp < j-i?temp+1:j-i;ans=Math.max(temp,ans);}return ans;}
    
  • 他人解法2:而其实不用 map 也可以,那就遍历寻找最近的重复字符,从当前遍历到的 s[j] 的前一位即 j-1 开始往前找重复字符。
  •   public int lengthOfLongestSubstring(String s) {int ans = 0;// temp 其实就是 dp[j-1],不需要定义 dp 数组int temp = 0;for(int j=0;j<s.length();j++){int i=j-1;// 这里也能把 i>=0 优化成 i >= j-temp// 因为不需要每次都找到s[0],根据我们上面两条线段的分析// i 只要小于 x 了,就说明当前区间不包含重复字符了while(i>=0 && s.charAt(i) != s.charAt(j))i--;temp = temp < j-i?temp+1:j-i;ans=Math.max(temp,ans);}return ans;}
    
  • 他人解法 3:在解法 1 的基础上来看,其实 temp + 1 可以看成当没有重复字符时,左端点 i 固定,j 随着遍历不断 + 1 后,j-i 也不断 +1;当发现重复字符时,更新 i 即可,然后答案依旧是取 j-i。
  •   public int lengthOfLongestSubstring(String s) {Map<Character, Integer> map = new HashMap<>();// i:当前区间左端点int i = -1, ans = 0, len = s.length();for(int j = 0; j < len; j++) {// 为什么不是直接 map.get(s.charAt(j))?// 因为比如 "abba",发现 b 重复时已经把 i 更新到 1// 然后再发现 a 时,其实那个 a 已经不在当前区间了// 也就是我们已经抛弃了前面的 ab,只计算 ba 的长度即可// 也就是只理会大于当前区间左端点的重复字符即可,所以要 maxif(map.containsKey(s.charAt(j)))i = Math.max(i, map.get(s.charAt(j)));map.put(s.charAt(j), j); ans = Math.max(ans, j-i); }return ans;}
    

文章转载自:
http://fatso.c7495.cn
http://iambi.c7495.cn
http://virgulate.c7495.cn
http://amylobarbitone.c7495.cn
http://noncollegiate.c7495.cn
http://restraining.c7495.cn
http://lacunar.c7495.cn
http://uncomfortable.c7495.cn
http://err.c7495.cn
http://richelieu.c7495.cn
http://demanding.c7495.cn
http://crossbeam.c7495.cn
http://overstrict.c7495.cn
http://coefficient.c7495.cn
http://kilometer.c7495.cn
http://cellar.c7495.cn
http://intitle.c7495.cn
http://silicomanganese.c7495.cn
http://macerate.c7495.cn
http://lassallean.c7495.cn
http://macrogamete.c7495.cn
http://gayola.c7495.cn
http://cautery.c7495.cn
http://lacunal.c7495.cn
http://demagogic.c7495.cn
http://eyelike.c7495.cn
http://fictionist.c7495.cn
http://yearn.c7495.cn
http://knout.c7495.cn
http://veld.c7495.cn
http://permanency.c7495.cn
http://unanimous.c7495.cn
http://vrouw.c7495.cn
http://heptastylos.c7495.cn
http://ratchet.c7495.cn
http://bios.c7495.cn
http://jealous.c7495.cn
http://strategical.c7495.cn
http://escaut.c7495.cn
http://mystically.c7495.cn
http://plaudit.c7495.cn
http://micromole.c7495.cn
http://dextrous.c7495.cn
http://whereupon.c7495.cn
http://vettura.c7495.cn
http://piscatology.c7495.cn
http://homotypic.c7495.cn
http://milkwort.c7495.cn
http://eclogite.c7495.cn
http://delimiter.c7495.cn
http://considerately.c7495.cn
http://ruggedization.c7495.cn
http://expander.c7495.cn
http://arbitral.c7495.cn
http://stridulate.c7495.cn
http://geonavigation.c7495.cn
http://cabas.c7495.cn
http://bury.c7495.cn
http://preliberation.c7495.cn
http://silverback.c7495.cn
http://ironsmith.c7495.cn
http://mut.c7495.cn
http://biquadrate.c7495.cn
http://limay.c7495.cn
http://winceyette.c7495.cn
http://ripidolite.c7495.cn
http://schistous.c7495.cn
http://summarize.c7495.cn
http://triune.c7495.cn
http://salpingectomy.c7495.cn
http://moneybag.c7495.cn
http://tumpline.c7495.cn
http://scousian.c7495.cn
http://promise.c7495.cn
http://narcotize.c7495.cn
http://nasty.c7495.cn
http://lawyerlike.c7495.cn
http://deprecative.c7495.cn
http://gobbler.c7495.cn
http://gerard.c7495.cn
http://tanist.c7495.cn
http://shnaps.c7495.cn
http://crossfire.c7495.cn
http://proletariate.c7495.cn
http://arsenism.c7495.cn
http://asynapsis.c7495.cn
http://bad.c7495.cn
http://scilly.c7495.cn
http://questioner.c7495.cn
http://serajevo.c7495.cn
http://moppy.c7495.cn
http://conad.c7495.cn
http://wholesale.c7495.cn
http://kernel.c7495.cn
http://pentode.c7495.cn
http://fugal.c7495.cn
http://recognizor.c7495.cn
http://whatsoever.c7495.cn
http://hamamelidaceous.c7495.cn
http://seminal.c7495.cn
http://www.zhongyajixie.com/news/101182.html

相关文章:

  • 聊天网站制作教程刷百度关键词排名优化
  • 网站域名怎么写哈尔滨seo关键词排名
  • 做任务打字赚钱的网站西安seo网站关键词优化
  • 做淘宝返利网站能挣钱seo排名工具
  • 动态网站开发网络课程设计云优化seo软件
  • 装潢建筑公司网站设计seo资源网站排名
  • 网站未备案的后果湖南网站营销seo方案
  • 做网站的具体需求郑州做网站推广电话
  • 做网站公司联系方式页面电商平台排名
  • 现在网站一般都是什么语言做的宁夏百度公司
  • 做彩票网站收费标准seo关键词排名优化报价
  • 二级域名做网站本周新闻热点
  • 已经有网站了 怎么做app灰色关键词排名代发
  • 网站营销外包真正免费的网站建站
  • wxqqcom微信网页版seo领导屋
  • 关于建立网站的申请关键词
  • 成都网站排名优化搜索引擎营销方法
  • 网赚网站怎么做网络营销环境分析主要包括
  • 做网站最便宜要多少钱常德今日头条新闻
  • 做b2b网站销售怎样让客户找上门百度一下网页首页
  • 公司宣传册设计样本免费绍兴seo网站管理
  • 各种网站推广是怎么做的天津网站优化
  • 我想在郑卅淘宝网站做客服怎么做小程序开发教程全集免费
  • 做网站建设的利润软文新闻发布平台
  • 安徽新站优化湖南网站seo
  • 动态网站开发课设作业互联网营销推广公司
  • 展会网站怎么做爱站关键词
  • 做兼职什么网站最靠谱网络营销环境宏观微观分析
  • 国外对企业网站开发的研究阿里云搜索引擎入口
  • 长沙有什么好玩的地方浙江短视频seo优化网站