17.电话号码的字母组合

class Solution {public List<String> letterCombinations(String digits) {List<String> combiantions=new ArrayList<String>();if(digits.length()==0){return combiantions;}Map<Character,String> phoneMap=new HashMap<Character,String>();phoneMap.put('2',"abc");phoneMap.put('3',"def");phoneMap.put('4',"ghi");phoneMap.put('5',"jkl");phoneMap.put('6',"mno");phoneMap.put('7',"pqrs");phoneMap.put('8',"tuv");phoneMap.put('9',"wxyz");backtrack(combiantions,phoneMap,digits,0,new StringBuffer());return combiantions;}public void backtrack(List<String> combiantions,Map<Character,String> phoneMap,String digits,int index,StringBuffer combination){if(index==digits.length()){combiantions.add(combination.toString());}else{char digit=digits.charAt(index);String letters=phoneMap.get(digit);int lettersCount=letters.length();for(int i=0;i<lettersCount;i++){combination.append(letters.charAt(i));backtrack(combiantions, phoneMap, digits, index+1, combination);combination.deleteCharAt(index);}}}
}

17.letterCombinations相关推荐

  1. 《LeetCode力扣练习》第17题 电话号码的字母组合 Java

    <LeetCode力扣练习>第17题 电话号码的字母组合 Java 一.资源 题目: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合.答案可以按 任意顺序 返回. 给出数 ...

  2. [Leetcode][第17题][JAVA][电话号码的字母组合][回溯]

    [问题描述][中等] [解答思路] 用哈希表/数组存储每个数字对应的所有可能的字母,然后进行回溯操作. 回溯过程中维护一个字符串,表示已有的字母排列(如果未遍历完电话号码的所有数字,则已有的字母排列是 ...

  3. [DFS|回溯法] leetcode 17 电话号码的字母组合

    [DFS|回溯法] leetcode 17 电话号码的字母组合 1.题目 题目链接 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合. 给出数字到字母的映射如下(与电话按键相同).注意 ...

  4. 【DFS】LeetCode 17. Letter Combinations of a Phone Number

    LeetCode 17. Letter Combinations of a Phone Number Solution1:我的答案 利用8皇后同样的方法,回溯+递归 时间复杂度O(3n)O(3n)O( ...

  5. 【AcWing19】【LeetCode】DFS - 46/47/39/77/78/216/17/131/93/90/491

    文章目录 代码随想录在B站的视频讲得比AcWing好 模板题1:排列数字 模板题2:n皇后 方法一 方法二 LeetCode 46. 全排列 LeetCode 47. 全排列 II (重复元素) Le ...

  6. day21|216.组合总和III、17.电话号码的字母组合

    216.组合总和III 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9 每个数字 最多使用一次 返回所有可能的有效组合的列表 .该列表不能包含相同的组合两次,组合可以以 ...

  7. Day25|组合板子|216. 组合总和 III| 17. 电话号码的字母组合

    组合板子+剪枝 216. 组合总和 III 剪枝操作? 17. 电话号码的字母组合 216. 组合总和 III class Solution {private:vector<int>tem ...

  8. LeetCode 216组合总和III 17电话号码的字母组合

    文章目录 216组合总和III c++ 代码实现 python 代码实现 17.电话号码的字母组合 c++ 代码实现 python代码实现 216组合总和III 找出所有相加之和为 n 的 k 个数的 ...

  9. day29 | 216.组合总和III 17.电话号码的字母组合

    文章目录 216.组合总和III 1.代码(AC) 2.分析 17.电话号码的字母组合 1.代码 2.分析 216.组合总和III 1.代码(AC) class Solution {List<L ...

最新文章

  1. 如何处理单元测试产生的数据,下列哪些说法是正确的
  2. 又一个创业者自杀:心生郁结,被曝曾卖房给员工发工资
  3. 吴裕雄--天生自然 高等数学学习:多元函数的概念
  4. LeetCode-双指针-88. 合并两个有序数组
  5. 1.3 Java类的属性:成员变量的定义和声明
  6. C# 装箱和拆箱、理论概念(非原创)
  7. java定时器异常,定时任务异常 高手进
  8. Spring-jdbc-AbstractRoutingDataSource
  9. 常见音视频编码格式一览
  10. java paypal开发详解_PayPal 开发详解(六):下载paypal立即付款SDK 并编译打包
  11. IP被封检测和端口被封检测方法分享
  12. 中国网页游戏行业调研与分析
  13. 【51单片机】按键控制多个舵机(可用于机械臂控制)
  14. crypto-js 加密解密 (TS版本)
  15. 5G 室内融合定位白皮书
  16. HTML之基础标签_思维导图版
  17. M1 芯片版 Mac 抹掉重装系统教程
  18. 隧道技术之 外网访问内网
  19. day17-csv文件excel文件操作和面向对象编程
  20. iomanip I/O流类库操纵符

热门文章

  1. RAID0、RAID1及RAID5的区别详解
  2. M1卡/CUID卡格式化清卡操作方法
  3. 什么是数据库安全审计
  4. 图像目标区域质心计算
  5. 利用全连接网络实现数独求解
  6. linux ln 权限不够,Linux ln命令的注意事項
  7. Matlab-QPSK调制与解调 QPSK信号产生的信息、I路、Q路信号对比图以及接收端解调的I路,Q 路,信息恢复的对比图
  8. 常用汇编指令(七大类)
  9. idea-设置代码块颜色
  10. 面试问到不会的技术问题?大小公司?程序员、校招面试技巧