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

龙江建站技术西安百度推广代运营

龙江建站技术,西安百度推广代运营,开一个网站的流程,导购类网站如何做会员互动分割回文串 关键点: 递归如何终止:当startIndex s.length() (注意没有-1是因为这一步操作不会继续进行)在递归循环中如何截取子串:关键在于在每个栈都创建属于自己的StringBuffer(!&#xff…

分割回文串

关键点:

  1. 递归如何终止:当startIndex == s.length() (注意没有-1是因为这一步操作不会继续进行)
  2. 在递归循环中如何截取子串:关键在于在每个栈都创建属于自己的StringBuffer(!!!很关键,这样就不会在每次换栈的时候手动删除sb),在自己的基础上append即可。
  3. 如何判断回文:类似数组中的左右指针
  4. !!!只有在字符串判断为回文串时才进行递归
/**end其实是不变,虽然每层循环个数不一样,但是每层循环的其实位置也不一样 */
class Solution {List<List<String>> res = new ArrayList<>();List<String> sub = new ArrayList<>();public List<List<String>> partition(String s) {StringBuffer sb = new StringBuffer();fucPartition(s, 0, sb);return res;}public void fucPartition(String s, int startIndex, StringBuffer sb){ //每个里边有自己的sb// 递归终止条件if(startIndex == s.length() ){res.add(new ArrayList<>(sub));return;}for(int i = startIndex; i < s.length(); i++){//截取字串sb.append(s.charAt(i));// 判断是否位回文串if(isTrue(sb)){sub.add(sb.toString()); // 这个别忘了fucPartition(s, i + 1, new StringBuffer()); //创建新的sbsub.remove(sub.size() - 1);//sub.remove(sub.size() - 1); }else{ //如果不是说明分割方式错误continue; // 不再往下进行}}}//判断字符串是不是回文public boolean isTrue(StringBuffer sb){int left = 0;int right = sb.length() - 1;while(left < right){if(sb.charAt(left) == sb.charAt(right)){left++;right--;}else{return false;}}return true;}
}

写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day26)(呜呜隔了好多天了,后边要更加油!!)

复原IP地址

我在这里用容器装路径。
思路类似于分割回文串,主要两种不同:

  1. 递归终止条件:够四个数就终止
  2. 判断是否有效性:这里的代码思路是,先保证截取的字符串不能超过3位数,并且如果首位为0说明该字符串只能有一位,如果满足以上条件再将字符串转成int,看是否在0-255范围内。
class Solution {List<String> res = new ArrayList<>();List<Integer> sub = new ArrayList<>();public List<String> restoreIpAddresses(String s) {// 层数的话必须要是四个,并且回溯的本质是枚举if(s.length() < 4 || s.length() > 12){return res; //整体剪枝}fucIp(s, 0, new StringBuffer());return res;}public void fucIp(String s, int startIndex, StringBuffer sb){ //切割字符串,用sb记录自己的情况if(sub.size() == 4){// 正好处理完if(startIndex == s.length()){StringBuffer sbu = new StringBuffer();for(int i : sub){sbu.append(i).append(".");}sbu.deleteCharAt(sbu.length() - 1);res.add(sbu.toString());}return;}for(int i = startIndex; i < s.length(); i++){sb.append(s.charAt(i));if(isTrue(sb.toString())){ // 如果有效就加入进去sub.add(Integer.parseInt(sb.toString()));fucIp(s, i + 1, new StringBuffer());sub.remove(sub.size() - 1);}}}//判断整数是不是有效的public boolean isTrue(String s){//这儿的条件之前考虑不全if(s.charAt(0) == '0' && s.length() > 1){return false;}if(s.length() > 3){return false;}int i = Integer.parseInt(s); // 字符串强转为intif(i < 0 || i > 255){return false;}return true;}
}

文章转载自:

http://Up0nxSwP.Lsjtq.cn
http://yYxYNNih.Lsjtq.cn
http://sMzDBpU1.Lsjtq.cn
http://PFlwvdbG.Lsjtq.cn
http://xexHXjMJ.Lsjtq.cn
http://jCS5Lp5P.Lsjtq.cn
http://Vqr8N6Xp.Lsjtq.cn
http://O6lc6TFI.Lsjtq.cn
http://k9RkVFmn.Lsjtq.cn
http://21e6i3nC.Lsjtq.cn
http://LxO4gPtJ.Lsjtq.cn
http://NZxv8UVq.Lsjtq.cn
http://knhJ2aan.Lsjtq.cn
http://Y8bJ4Qa1.Lsjtq.cn
http://3ztnzBjw.Lsjtq.cn
http://dxXqf4DT.Lsjtq.cn
http://0QrQjIXW.Lsjtq.cn
http://7ewbkx08.Lsjtq.cn
http://vcxbCUdV.Lsjtq.cn
http://g8XXX7kC.Lsjtq.cn
http://uU9L9spm.Lsjtq.cn
http://uCmW2gcx.Lsjtq.cn
http://8KFaTeax.Lsjtq.cn
http://gAZplpQO.Lsjtq.cn
http://x0lU4wJP.Lsjtq.cn
http://Nmxy48jS.Lsjtq.cn
http://7oHFZNet.Lsjtq.cn
http://TcAEj7xy.Lsjtq.cn
http://tFKfZwbA.Lsjtq.cn
http://xNyrMBY9.Lsjtq.cn
http://www.dtcms.com/wzjs/682837.html

相关文章:

  • 中小企业网站建设行情vi设计案例赏析
  • 做网站需要留什么条件响应式网站建设视频教程
  • 个人网站介绍在国外用什么地图导航
  • 东莞网站建设seo温州二井建设有限公司网站
  • 简述网站设计规划的步骤装修公司网页设计
  • 公益网站设计国内做设计的网站建设
  • wordpress主题 评论黑帽seo
  • 怎样制作公司网站太原网站建设推广服务
  • 如何给网站做排名优化重庆承越网站建设地址
  • 企业高端网站建设公司计算机应用技术是学什么的
  • 网站站内内链建设在招聘网站里做电话销售
  • 网站建站平台排行榜台州网站建设推广公司
  • 宁波行业网站建设短视频动漫怎么做出来的
  • 成立网站有什么要求wordpress 相册形式
  • 做网站需要几步手机版企业网站php
  • 网站建设需要经历什么步骤好的版式设计网站
  • 婚纱网站模板宁夏住宅建设发展公司网站
  • 怎么制作一个简单的网站wordpress表格美化
  • 诸城做网站的北京快速优化排名
  • 雁塔网站建设国外企业网站案例
  • 大型网站建设哪家服务好it教育培训机构
  • 深圳装修公司网站甘肃省嘉峪关建设局网站
  • 进服务器编辑网站怎么做上门做睫毛哪个网站
  • 淘宝店铺网站建设可行性报告深圳定制钻戒哪里好推荐
  • 义乌网站开发公司网业升级
  • 宜宾网站网站建设米拓cms建站系统
  • 长春网站推广排名建设银行网站招聘官网
  • 游戏网站 模板手写logo设计
  • 深圳整站外卖平台
  • 网站备案怎么这么麻烦广州网络科技有限公司有哪些