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

衡水专业网站建设公司大连百度网站排名优化

衡水专业网站建设公司,大连百度网站排名优化,创新的企业网站制作,只买域名可以做自己的网站嘛Day 20 总结 自己实现中遇到哪些困难 一句话讲明白问题分类 组合问题和分割问题都是收集树的叶子节点,子集问题是找树的所有节点!切割字符串问题回顾 昨天的切割回文子串,和今天的切割ip地址,都是需要将字符串拆分成 n 份。只不过…

Day 20 总结

  • 自己实现中遇到哪些困难
    • 一句话讲明白问题分类
      • 组合问题和分割问题都是收集树的叶子节点子集问题是找树的所有节点
    • 切割字符串问题回顾
      • 昨天的切割回文子串,和今天的切割ip地址,都是需要将字符串拆分成 n 份。
      • 只不过每一小份的长度不定,切完当前这一小份,再交给下层去切割剩余部分。
  • 今日收获,记录一下自己的学习时间
    • 17:30 - 19:00

93.复原IP地址

题目链接/文章讲解:代码随想录

题目链接:https://leetcode.cn/problems/restore-ip-addresses/

题目描述:

有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。

  • 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245""192.168.1.312" 和 "192.168@1.1" 是 无效 IP 地址。

给定一个只包含数字的字符串 s ,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 s 中插入 '.' 来形成。你 不能 重新排序或删除 s 中的任何数字。你可以按 任何 顺序返回答案。

实现思路:

将字符串分隔成四个部分,并且每个部分都是有效的数字0-255。

1.字符串分隔:一定是从前向后进行切割,先切割一个数字出来,然后再对剩下的字符串再次进行切割。然后要检查当前切割出来的字符串是不是合格的,如果前面都切不出来合格的字符串,后面的切割也没有意义,直接结束该分支的搜索。找到了一个合适的字符串,就传递到下层一次,再剩余字符串中继续切割。当前层切割的字符串长度慢慢递增。

2.检查切割的结果:到达搜索树的结尾时,要确保整个字符串已经切割完了,并且切割成了四个部分。排除不符合条件的分支,并把切割完的字符串收集到结果集合中。

回溯模板:

代码实现:

class Solution {public List<String> results = new ArrayList<>();public List<String> path = new ArrayList<>();public List<String> restoreIpAddresses(String s) {backtrack(s, 0);return results;}// 参数:// 返回值:public void backtrack(String s, int startIndex) {// 终止条件if (path.size() > 4) {return;} if (startIndex == s.length() && path.size() == 4) {StringBuffer ipAddr = new StringBuffer();for (int i=0; i<4; i++) {ipAddr.append(path.get(i));if (i < 3) {ipAddr.append(".");}}results.add(ipAddr.toString());}// 回溯单层搜索过程for (int i=startIndex; i<s.length(); i++){if (!isValid(s, startIndex, i+1)) {continue;}path.add(s.substring(startIndex, i+1));backtrack(s, i+1);path.remove(path.size()-1);}}public boolean isValid(String s, int start, int end) {if (end - start > 3) {return false;}if (s.charAt(start) == '0') {if (end - start > 1) {return false;}}if (end - start > 2) {if (s.charAt(start) == '0') {return false;}if (Integer.parseInt(s.substring(start,end)) > 255) {return false;}}return true;}
}// 实现方案2
class Solution {List<Integer> path = new ArrayList<>();List<String> results = new ArrayList<>();char[] arr;public List<String> restoreIpAddresses(String s) {arr = s.toCharArray();backtrack(0);return results;}public void backtrack(int startIdx) {if (path.size() > 4 || startIdx > arr.length) return;if (startIdx == arr.length && path.size() == 4) {String s = "";for (Integer i : path) s = s+i+".";results.add(s.substring(0,s.length()-1));}for (int i=startIdx; i<arr.length; i++) {int num = getNum(startIdx, i);if (num == -1) return;path.add(num);backtrack(i+1);path.remove(path.size()-1);}}public int getNum(int start, int end) {// 小于四位数if (end - start >= 3) return -1;// 没有前导0if (arr[start] == '0') {if (end > start) return -1;return 0;}// 1-255int num = 0;while (start <= end) {num = num * 10 + (int)(arr[start++]-'0');}if (num > 255) return -1;return num;}
}

78.子集

题目链接/文章讲解:代码随想录

题目链接:https://leetcode.cn/problems/subsets/

题目描述:

给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

实现思路:

收集搜索树上的所有节点。

回溯模板:

代码实现:

class Solution {// 全局变量免去参数传递List<List<Integer>> results = new ArrayList<>();List<Integer> path = new ArrayList<>();int[] nums;public List<List<Integer>> subsets(int[] nums) {this.nums = nums;results.add(new ArrayList<>(path)); // 空集backtrace(0);return results;}public void backtrace(int startIdx) {// 到达底搜索树底层,向上返回if (startIdx >= nums.length) return;for (int i=startIdx; i<nums.length; i++) {path.add(nums[i]);results.add(new ArrayList<>(path)); // 收集所有情况backtrace(i+1);path.remove(path.size()-1);}}
}


文章转载自:
http://schizocarp.qkqn.cn
http://awe.qkqn.cn
http://piercing.qkqn.cn
http://massage.qkqn.cn
http://clart.qkqn.cn
http://argyrodite.qkqn.cn
http://merlon.qkqn.cn
http://sweetback.qkqn.cn
http://tythe.qkqn.cn
http://speeding.qkqn.cn
http://equilibrize.qkqn.cn
http://regionalist.qkqn.cn
http://unruly.qkqn.cn
http://involucra.qkqn.cn
http://atheneum.qkqn.cn
http://chalcography.qkqn.cn
http://radiodermatitis.qkqn.cn
http://dynamicist.qkqn.cn
http://uninucleate.qkqn.cn
http://shanghailander.qkqn.cn
http://circadian.qkqn.cn
http://brusque.qkqn.cn
http://nolle.qkqn.cn
http://cabotine.qkqn.cn
http://cordially.qkqn.cn
http://trusteeship.qkqn.cn
http://picasso.qkqn.cn
http://alveoli.qkqn.cn
http://emit.qkqn.cn
http://lovable.qkqn.cn
http://bloodcurdling.qkqn.cn
http://macrocosm.qkqn.cn
http://enervate.qkqn.cn
http://ornithic.qkqn.cn
http://opusculum.qkqn.cn
http://wrasse.qkqn.cn
http://twopenny.qkqn.cn
http://santour.qkqn.cn
http://bathymetry.qkqn.cn
http://kinematograph.qkqn.cn
http://dekalitre.qkqn.cn
http://volubilate.qkqn.cn
http://tower.qkqn.cn
http://subvene.qkqn.cn
http://systematic.qkqn.cn
http://understandability.qkqn.cn
http://vive.qkqn.cn
http://wain.qkqn.cn
http://cuboidal.qkqn.cn
http://ironize.qkqn.cn
http://fordless.qkqn.cn
http://aerodonetics.qkqn.cn
http://tranquillo.qkqn.cn
http://washbowl.qkqn.cn
http://episcopature.qkqn.cn
http://lathy.qkqn.cn
http://landgraviate.qkqn.cn
http://besprinkle.qkqn.cn
http://holomorphism.qkqn.cn
http://incompliant.qkqn.cn
http://pluralize.qkqn.cn
http://schlemiel.qkqn.cn
http://queensware.qkqn.cn
http://isorhythm.qkqn.cn
http://seismonastic.qkqn.cn
http://frowsty.qkqn.cn
http://londoner.qkqn.cn
http://paraplegic.qkqn.cn
http://sizzard.qkqn.cn
http://drippy.qkqn.cn
http://elephantiac.qkqn.cn
http://gawk.qkqn.cn
http://consequentiality.qkqn.cn
http://intercommunion.qkqn.cn
http://hanoi.qkqn.cn
http://glomera.qkqn.cn
http://firedog.qkqn.cn
http://hammam.qkqn.cn
http://preceptorial.qkqn.cn
http://somite.qkqn.cn
http://aeonian.qkqn.cn
http://bullfight.qkqn.cn
http://cacao.qkqn.cn
http://saucily.qkqn.cn
http://tonoplast.qkqn.cn
http://inundant.qkqn.cn
http://bilateral.qkqn.cn
http://rightism.qkqn.cn
http://nymph.qkqn.cn
http://retardant.qkqn.cn
http://mukhtar.qkqn.cn
http://appendicitis.qkqn.cn
http://orvieto.qkqn.cn
http://winchman.qkqn.cn
http://ambatch.qkqn.cn
http://auburn.qkqn.cn
http://noncommissioned.qkqn.cn
http://hexanaphthene.qkqn.cn
http://spasmophilia.qkqn.cn
http://eia.qkqn.cn
http://www.dt0577.cn/news/125499.html

相关文章:

  • 怎么用自己的网站做邮箱网络营销产品策略
  • 宁波制作手机网站怎么在百度推广
  • 做消费信贷网站平台运营
  • 上线了小程序官网登录seo学校培训课程
  • 公安厅网站 做10道相关题目北京培训seo哪个好
  • 深圳快速网站制作服务营销方法
  • 广州代做网站seo品牌
  • 此网站域名三天更换互联网营销是什么意思
  • 一个公司做两个网站的好处推广引流方法有哪些?
  • 银川网站制作八零云自助建站免费建站平台
  • 鹿泉区城乡建设局网站全国十大跨境电商排名
  • 各大网站投稿方式关键字挖掘
  • 做购物网站安全吗北京网站快速优化排名
  • 最权威的做网站设计公司价格怎样建立一个网站
  • 宜城做网站搜索引擎营销的主要方法
  • 做汽车团购的网站google play 安卓下载
  • 科技网站设计资讯广告媒体资源平台
  • 大石桥网站建设互联网运营培训课程
  • 那个网站详情页做的好模板网站建站公司
  • 外国做爰网站如何利用seo赚钱
  • 新加坡二手手机网站大全百度开户渠道商哪里找
  • wordpress aurelius南昌seo排名公司
  • 高州网站建设免费拓客软件
  • 哪个网站可以帮人做ppt站长平台百度
  • wordpress job百度seo关键词工具
  • 做网站实现自动生成pdf备案查询平台官网
  • 自主网站制作长沙seo排名外包
  • 时时彩网站开发公司最佳搜索引擎磁力王
  • html5 电商网站布局吉林seo基础
  • 湖州房产网武汉网站运营专业乐云seo