17. 电话号码的字母组合

Posted yuhong1103

tags:

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

 1 //DFS问题一直很难
 2 class Solution 
 3 {
 4     void dfs(string digits,vector<vector<char>>& d,vector<string> &res,int cur,string& temp)
 5     {
 6         if(cur == digits.size()) 
 7         {
 8             res.push_back(temp);
 9             return;
10         }
11 
12         for(auto a : d[digits[cur] - 0])
13         {
14             temp.push_back(a);
15             dfs(digits,d,res,cur + 1,temp);
16             temp.pop_back();
17         }
18     }
19 public:
20     vector<string> letterCombinations(string digits) 
21     {
22         vector<vector<char>> d(10);
23         d[0] = { };
24         d[1] = {};
25         d[2] = {a,b,c};
26         d[3] = {d,e,f};
27         d[4] = {g,h,i};
28         d[5] = {j,k,l};
29         d[6] = {m,n,o};
30         d[7] = {p,q,r,s};
31         d[8] = {t,u,v};
32         d[9] = {w,x,y,z};
33         vector<string> res;
34         if(digits.empty()) return res;
35         string temp;
36         dfs(digits,d,res,0,temp);
37         return res;
38     }
39 };

 

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

leetcode-----17. 电话号码的字母组合

LeetCode 17电话号码的字母组合

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

17. 电话号码的字母组合

17. 电话号码的字母组合

Leecode17. 电话号码的字母组合——Leecode大厂热题100道系列