LeetCode 17电话号码的字母组合

Posted Visitor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 17电话号码的字母组合相关的知识,希望对你有一定的参考价值。

题目链接

【题解】


用回溯法搞一下。
一搞就有~
注意输入空串的时候别返回那个空串。。

【代码】

class Solution {
public:
    
    string dic[10];
    vector<string> ans;
    
    void dfs(string &digits,int idx,string cur){
        if (idx==(int)digits.size()){
            ans.push_back(cur);
            return;
        }
        int len = dic[(int)(digits[idx]-'0')].size();
        for (int i = 0;i < len;i++){
            dfs(digits,idx+1,cur+dic[(int)(digits[idx]-'0')][i]);
        }
    }
    
    vector<string> letterCombinations(string digits) {
        ans.clear();
        if (digits.size()==0) return ans;
        dic[2] = "abc";dic[3] = "def";dic[4] = "ghi";dic[5]="jkl";
        dic[6]="mno";dic[7] = "pqrs";dic[8] = "tuv";dic[9] = "wxyz";
        dfs(digits,0,"");
        return ans;
    }
};

以上是关于LeetCode 17电话号码的字母组合的主要内容,如果未能解决你的问题,请参考以下文章

[回溯算法]leetcode17. 电话号码的字母组合(c实现)

leetcode17 电话号码的字母组合(Medium)

LeetCode 第17题电话号码的字母组合

LeetCode 17.电话号码的字母组合

LeetCode #17 电话号码的字母组合

LeetCode17. 电话号码的字母组合