zoukankan      html  css  js  c++  java
  • 17. Letter Combinations of a Phone Number(js)

    17. Letter Combinations of a Phone Number

    Given a string containing digits from 2-9 inclusive, 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. Note that 1 does not map to any letters.

    Example:

    Input: "23"
    Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].
    题意:找到按键对应数字所有的字符组合
    代码如下:
    var letterCombinations = function(digits) {
        //结果数组
        let res=[];
        let charArr=["0","1","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"];
        back(res,digits,"",0,charArr);
        return res;
    };
    //回溯
    var back=function(res,digits,curr,index,charArr){
        if(index===digits.length){
            if(curr.length!==0) res.push(curr);
            return ;
        }
        //找到数字对应的字符串
        let temp=charArr[parseInt(digits.charAt(index))];
        for(let i=0;i<temp.length;i++){
            let next=curr+temp.charAt(i);
            back(res,digits,next,index+1,charArr);
        }
    };


  • 相关阅读:
    罗马数字转换成整数
    整数转换成罗马数字
    hdu 5050 大数
    hdu 5051 找规律?+大trick
    hdu 5055
    hdu 5054
    hdu 5058 set应用
    hdu 5056 所有字母数都<=k的子串数目
    hdu 5059 简单字符串处理
    hdu 5060 五种情况求圆柱体与球体交
  • 原文地址:https://www.cnblogs.com/xingguozhiming/p/10386363.html
Copyright © 2011-2022 走看看