zoukankan      html  css  js  c++  java
  • [leetcode] Letter Combinations of a Phone Number

    Given a digit string, return all possible letter combinations that the number could represent.

    A mapping of digit to letters (just like on the telephone buttons) is given below.

    Input:Digit string "23"
    Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].

    Note:
    Although the above answer is in lexicographical order, your answer could be in any order you want.


    https://oj.leetcode.com/problems/letter-combinations-of-a-phone-number/

    思路:dfs。

    技巧,数字与字母map的应用。

    特殊情况,输入是"",要求也返回[""],略不科学。。

    import java.util.ArrayList;
    import java.util.List;
    
    public class Solution {
        public List<String> letterCombinations(String digits) {
            List<String> res = new ArrayList<String>();
            if(digits.length()==0){
                res.add("");
                return res;
            }
            StringBuilder sb = new StringBuilder();
            dfs(res,digits,sb);
            
            return res;
        }
         
        private String[] numMap = {"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};
        
        private void dfs(List<String> res, String digits,StringBuilder sb){
            if(digits.length()==0){
                res.add(sb.toString());
                return;
            }
            int curDigit =digits.charAt(0)-'0';
            String curStr = numMap[curDigit];
            
            for(int i=0;i<curStr.length();i++){
                sb.append(curStr.charAt(i));
                dfs(res,digits.substring(1),sb);
                sb.deleteCharAt(sb.length()-1);
            }
            
            
        }
        
        public static void main(String[]args){
            System.out.println(new Solution().letterCombinations(""));
        }
        
    }

    第二遍记录:

  • 相关阅读:
    程序猿编程,软件设计都干什么?
    工作流——来龙去脉
    开发编码流程
    我的spring-boot开发环境
    JSR 303
    项目中java异常处理
    学习交流,一些数据结构和算法实现!
    C运算符
    js锚点
    玻璃工艺学笔记
  • 原文地址:https://www.cnblogs.com/jdflyfly/p/3890865.html
Copyright © 2011-2022 走看看