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

成都定制软件开发公司seo优化师就业前景

成都定制软件开发公司,seo优化师就业前景,flash网站php源码,出口外贸网站建设解题思路: 映射关系建立:创建一个哈希表存储数字到字母的映射。递归参数: 给定字符串 digits、结果集 result、当前路径 path、当前位置 start。递归过程: 当当前位置 start 等于 digits 长度时,说明已经遍历完 digi…

在这里插入图片描述

解题思路:

  1. 映射关系建立:创建一个哈希表存储数字到字母的映射。
  2. 递归参数: 给定字符串 digits、结果集 result、当前路径 path、当前位置 start。
  3. 递归过程:
  • 当当前位置 start 等于 digits 长度时,说明已经遍历完 digits,加入结果集。
  • 遍历 start 对应的字母集,将当前字母加入临时字符串,递归处理下一个数字。
  • 递归返回后,撤销选择(回溯),继续尝试其他可能的字母。

Java代码:

class Solution {private static final Map<Character, String> phoneMap = new HashMap<>() {{put('2', "abc");put('3', "def");put('4', "ghi");put('5', "jkl");put('6', "mno");put('7', "pqrs");put('8', "tuv");put('9', "wxyz");}};public List<String> letterCombinations(String digits) {List<String> result = new ArrayList<>();if (digits.isEmpty()) return result;backtrack(digits, result, new StringBuilder(), 0);return result;}private void backtrack(String digits, List<String> result, StringBuilder path, int start) {if (start == digits.length()) {result.add(path.toString());return;}char digit = digits.charAt(start);String letters = phoneMap.get(digit);for (char letter : letters.toCharArray()) {path.append(letter);backtrack(digits, result, path, start + 1);path.deleteCharAt(path.length() - 1);}}
}

在这里插入图片描述

复杂度分析:

  • 时间复杂度: 每个数字可能对应 3 个或 4 个字母。假设输入字符串长度为 n,其中 m 个数字对应 3 个字母,k 个对应 4 个字母,则总组合数为 3 m × 4 k 3^m × 4^k 3m×4k。时间复杂度为 O( 3 m × 4 k 3^m × 4^k 3m×4k)
  • 空间复杂度: 递归调用栈的深度最大为输入字符串长度 n,因此空间复杂度为 O(n)。

解题思路:

  1. 递归参数: 给定整数数组 candidates、剩余和 remain(初始化为给定目标整数 target)、结果集 result、当前路径 path、起始索引 start。
  2. 递归过程:
  • 当当前索引 index 等于 digits 长度时,说明已经遍历完 digits,加入结果集。
  • 遍历 index 对应的字母集,将当前字母加入临时字符串,递归处理下一个数字。
  • 递归返回后,撤销选择(回溯),继续尝试其他可能的字母。

Java代码:

class Solution {public List<List<Integer>> combinationSum(int[] candidates, int target) {List<List<Integer>> result = new ArrayList<>();List<Integer> path = new ArrayList<>();Arrays.sort(candidates);backtrack(candidates, target, result, path, 0);return result;}private void backtrack(int[] candidates, int remain, List<List<Integer>> result, List<Integer> path, int start) {if (remain < 0) {return;} else if (remain == 0) {result.add(new ArrayList<>(path));} else {for (int i = start; i < candidates.length; i++) {if (candidates[i] > remain) break;path.add(candidates[i]);backtrack(candidates, remain - candidates[i], result, path, i);path.removeLast();}}}
}

复杂度分析:

  • 时间复杂度: ​O(S),其中 S 是所有可能解的数目。
  • 空间复杂度: O(S * k)​(k 为组合平均长度)。主要消耗来自递归调用栈和结果列表。递归深度最大为 target / min(candidates)。
http://www.dtcms.com/wzjs/199681.html

相关文章:

  • 最近最新的日本字幕mv武汉seo工作室
  • 山西网站的公司58百度搜索引擎
  • 网站建设在作用是什么网络推广哪个好
  • 顺义网站建设推广优化seo宁波的网络营销服务公司
  • 能免费建设网站吗论坛推广方案
  • 外挂网那个网站cf外挂做的好免费seo排名网站
  • 外国公司做网站2023最火的十大新闻
  • 做网站图片代码怎么居中网络软文营销案例3篇
  • 哪个网站可以做室内设计收录优美图片找不到了
  • 外贸开源网站建站平台哪个比较权威
  • 软件下载免费app大全seo竞价培训
  • 怎样做网站吸引人广告电话
  • wordpress数据库清理sql青岛快速排名优化
  • 中国工程建设网官方网站精准客源app
  • 长春盛网网站建设站长工具是做什么的
  • 购物平台网站建设seo二级目录
  • 网站怎么做移动图片不显示不出来成都短视频代运营
  • 丰台网站制作网站推广线上推广
  • 南山网站多少钱直播:英格兰vs法国
  • 电子商务网站开发设计案例—易趣网电子商务网站怎么自己创建网站
  • 网站做节日营销活动的目的网络营销网站
  • 网站规划与建设ppt模板下载系统优化app最新版
  • 网页设计个人网站下载百度快照优化公司
  • 枣阳市建设局网站温州seo教程
  • 网站下载视频方法网站外链购买平台
  • 网络服务网络营销培训机构seo
  • 广州黄埔网站建设公司哪家好百度seo手机
  • siteserver cms网站访问量创建网站的公司
  • 加强学院网站建设深圳网站建设优化
  • 凡客诚品官方商城宁波网站优化公司价格