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

网站标题 没有排名seo网站沙盒期

网站标题 没有排名,seo网站沙盒期,网站都需要续费,北京网站空间域名题目描述 因为自己写的复杂度已经到了 O(n)#xff0c;就没有再参考题解的优化了更新#xff1a;滑动窗口方法 思路 代码 用一个 int[ ] count 来存储当前判断子串的各字母出现次数getCount()#xff1a;对当前子串#xff0c;求 count#xff0c;时间复杂度 O(…题目描述 因为自己写的复杂度已经到了 O(n)就没有再参考题解的优化了更新滑动窗口方法 思路 代码 用一个 int[ ] count 来存储当前判断子串的各字母出现次数getCount()对当前子串求 count时间复杂度 O(n)formatString()用 count 转换成当前子串的对比格式时间复杂度 O(1)对比格式如abcccz 变成 “a1b1c3z1”实际上getCount只要使用两次即可一次给 p一次给 s 的第一个子串往后s 的字串只需要对之前的 count 进行微小更新即可 class Solution {public ListInteger findAnagrams(String s, String p) {ListInteger ans new ArrayList();int pLen p.length();if(s.length() pLen){return ans;}char[] sC s.toCharArray();char[] pC p.toCharArray();// p的formatint[] count new int[26];getCount(pC, count);String formatP formatString(count);// s的初始countcount new int[26];getCount(s.substring(0, pLen).toCharArray(), count);// 0的处理String formatQ formatString(count);if(formatQ.equals(formatP)){ans.add(0);}// 从1开始for(int i 1; i pLen s.length(); i){char last sC[i pLen - 1];char pre sC[i - 1];if(last ! pre){count[last - a];count[pre - a]--;formatQ formatString(count); }if(formatQ.equals(formatP)){ans.add(i);}}return ans;}// 函数时间复杂度O(n)void getCount(char[] now, int[] count){for(char ch : now){count[ch - a];}}String formatString(int[] count){StringBuilder formatNow new StringBuilder();for(int i 0; i 26; i){if(count[i] ! 0){formatNow.append((char)(i a));formatNow.append(count[i]);}}return formatNow.toString();} }更新版 现在看之前的代码简直不堪入目…好长好冗余新思路等大滑动窗口数组维护滑动窗口值Arrays.equals() 用作对比 class Solution {public ListInteger findAnagrams(String s, String p) {if(s.length() p.length()) {return new ArrayList();}int[] sCounts new int[26];int[] pCounts new int[26];ListInteger ans new ArrayList();for(int i 0; i p.length(); i) {sCounts[s.charAt(i) - a];pCounts[p.charAt(i) - a];}if(Arrays.equals(sCounts, pCounts)) {ans.add(0);}int left 0, right p.length() - 1;while(right s.length() - 1) {sCounts[s.charAt(left) - a]--;sCounts[s.charAt(right) - a];if(Arrays.equals(sCounts, pCounts)) {ans.add(left);}}return ans;} }三刷 - 每日一题 滑动窗口20行以内解决 class Solution {public ListInteger findAnagrams(String s, String p) {if(s.length() p.length()) return new ArrayList();ListInteger ans new ArrayList();int[] sCounts new int[26];int[] pCounts new int[26];for(int i 0; i p.length(); i) {sCounts[s.charAt(i) - a];pCounts[p.charAt(i) - a];}if(Arrays.equals(sCounts, pCounts)) ans.add(0);int left 0, right p.length() - 1;while(right s.length() - 1) {sCounts[s.charAt(left) - a]--;sCounts[s.charAt(right) - a];if(Arrays.equals(sCounts, pCounts)) ans.add(left);}return ans;} }
http://wiki.neutronadmin.com/news/194793/

相关文章:

  • 用python做网站的公司上海网站建设哪个好
  • 建设的网站服务器茂名专业做网站
  • 如果网站没有做icp备案吗广西建设领域证书查询官方网站
  • 怎么对网站标注做记号哪个购物平台正品
  • flash网站开发框架wordpress百度蜘蛛只抓首页
  • 韩国风格网站江苏建设人才证书查询
  • 网站开发流程ppt自己怎么做点击量好的网站
  • 四川省建设厅注册管理中心网站十大app开发公司
  • 做ppt好的模板下载网站有哪些wordpress通栏
  • wordpress 建站赚钱怎么注册个人工作室
  • 国外设计网站导航专业单位网站设计企业
  • 建设小说网站风险分析网站维护升级
  • 公司建设网站费用吗新手 网站建设 书籍
  • 百度站长平台诊断苏州网站设计服务
  • php 手机网站cmsdw网站开发环境搭建
  • 湛洪波.jsp网站开发详解建设工程 法律 网站
  • 网站商城开发装修网站怎么做的
  • 企业网站设计步骤iis 网站显示建设中
  • 设计相关的网站网站的排版问题
  • 网站建设公司需要哪些网站创作
  • 电影网站怎么做优化如何做拦截网站
  • 聊城做网站找谁国外网站平台
  • 带做网站价位建设网站上申请劳务资质
  • 做钓鱼网站软件两个wordpress共享账户
  • 网站服务器和空间谁会制作网站
  • 广告设计制作公司网站o2o营销模式
  • 手机营销网站制作phpstudy
  • 海东商城网站建设自己做门户网站
  • myeclipse做网站更改名字最近国际新闻
  • 自己做的网站怎么发布上wordpress媒体库现实不全