LeetCode刷题-17.电话号码的字母组合
题目链接:17.电话号码的字母组合
¶题解:
嗯,,一道经典的递归问题,简单!
¶题目简述:
有一个电话,九键,和手机键盘一样,都有3-4个字母,要求按了几个数字后,要将所有组合全排列输出!
¶题解:
定义函数dfs(string digits, int u, string path)
digits
:输入的按键u
:表示当前处理到第几个按键path
:表示当前处理了的按键构成的组合
递归终止条件:u == digits.size()
,即每个数字都已经取了一个字母
递归过程:每个u
的位置去循环每一个字母,dfs(digits, u + 1, path + c);
这个最简单的递归过程会将全排列都走一遍的!
注意: 需要特判输入为空的情况,应该直接返回,否则会返回一个带有""
元素的数组。
¶AC代码:
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小牛博客!
评论