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

吴忠市网站建设_网站建设公司_页面权重_seo优化

百度网站联盟,公司做网站一般用什么域名,开原网站网站建设,西宁网络信息 网站建设131 Palindrome Partitioning 输入一个字符串s#xff0c;将s分割为n个子串#xff0c;每个子串都是一个回文。返回s有多少种分割方式。  例如输入#xff1a;“aab”  输出#xff1a;[ [“aa”,”b”], [“a”,”a”,”b”] ]  思路#xff1a;这是一个不断将问…131 Palindrome Partitioning 输入一个字符串s将s分割为n个子串每个子串都是一个回文。返回s有多少种分割方式。  例如输入“aab”  输出[ [“aa”,”b”], [“a”,”a”,”b”] ]  思路这是一个不断将问题规模变小的问题。有点动态规划的味道。 问题1 对”aab”切分子串。首先可以看做是 “a” 和”ab”切分。第一部分”a”切分确定并且”a”是一个回文”ab”作为输入字符串再次回到原问题。 问题1-1 对”ab”切分子串。不断递归直到输入字符串为0。 再次回到问题1。第二可以看做是 “aa” 和”b”切分。第一部分”aa”切分确定并且”aa”是一个回文”b”作为输入字符串再次回到原问题。 问题1-2 对”b”切分子串。 …..不断下去。 partition(“abc”) [ “a” partition(“bc”)] [ “aa” partition(“c”)] [ “aab” partition(“”)] partition(“bc”)[“b”partition(“c”)] partition(“c”)”c” partition(“”) 添加答案直接退出。 private ListListString resultList new ArrayListListString();public ListListString partition(String s) {resultList.clear();doPartition(s,new ArrayListString());return resultList;}private void doPartition(String s,ListString result){if(s){ListString n new ArrayListString();n.addAll(result);resultList.add(n);return;}int startIdx 0;for(int endIdx 1;endIdxs.length();endIdx){String subString s.substring(startIdx,endIdx);if(isPalindrome(subString)){result.add(subString);doPartition(s.substring(endIdx),result);result.remove(result.size()-1);}}if(isPalindrome(s)){result.add(s);doPartition(,result);result.remove(result.size()-1);}}private boolean isPalindrome(String s){int mid s.length()/2;int end s.length()-1;for(int i0;imid;i){if(s.charAt(i)!s.charAt(end-i)){return false;}}return true;} 改进 思路一模一样只是在处理的时候尽量少使用String的substring方法。参考链接。substring会创建一个新的String对象同时有一个数组拷贝的动作。该版本的速度大大提升。   private ListListString resultList new ArrayListListString();public ListListString partition(String s) {resultList.clear();doPartition(s,0,new ArrayListString());return resultList;}private void doPartition(String s,int leftIdx,ListString result){if(leftIdxs.length()){ListString n new ArrayListString();n.addAll(result);resultList.add(n);return;}for(int endIdx leftIdx;endIdxs.length();endIdx){if(isPalindrome(s,leftIdx,endIdx)){result.add(s.substring(leftIdx,endIdx1));doPartition(s,endIdx1,result);result.remove(result.size()-1);}}}private boolean isPalindrome(String s,int l,int r){if(lr) return true;while(lr){if(s.charAt(l)!s.charAt(r)){return false;}l;r--;}return true;}
http://www.ihoyoo.com/news/122847.html

相关文章:

  • 电子商务网站建设需求文档深圳h5响应式网站建设
  • 有没有做古装衣服的网站彩虹云商城网站搭建
  • 高端网站改版wordpress post攻击
  • 山东住房和城乡建设厅网站首页专业的seo网站优化公司
  • 浅析我国门户网站建设不足这么建设新的网站
  • 谷歌网站质量指南WordPress修改用户IP插件
  • 做网站漯河html网页制作模板图片
  • 网站做不做301免费建站网站排名
  • 已经有网站域名如何做网页花都区营销型网站建设
  • 成都专业建网站公司广告设计用的软件
  • 郑州建设电商网站自己做网站需要什么程序
  • 模拟百度搜索词进入网站做别墅花园绿化的网站
  • 如何使网站做的更好上海建设工程交易网
  • 在家做农业关注什么网站怎样进行文化建设
  • 青海省住房和城乡建设部网站百度一对一解答
  • 武平县网站建设seo排名哪家公司好
  • 中国建设银行吉林分行网站一个门户网站的建设流程
  • 定制网站开发费用多少江西建设厅网站
  • 交易平台网站怎么做为什么现在建设银行要下载网站激活码
  • wordpress 站内搜索代码郑州网络推广效果
  • 网站后台 添加用户wordpress标签加颜色
  • 教育建设网站衡水网站设计公司哪家专业
  • 泉州免费建站辽宁企业网站建设公司
  • 网站添加在线留言河南单招动漫制作专业
  • 豆瓣网站模板安康微平台
  • 做设计用的常用网站成都金融网站建设公司排名
  • 沂水县住房和建设局网站软件外包行业
  • 网站里怎样做物流跟踪功能网站seo排名公司
  • 给个免费的网站好人有好报牡丹江seo网站推广蜘蛛屯优化排名
  • 智能自助建站网站手机网站静态模板下载