博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Letter Combinations of a Phone Number
阅读量:4071 次
发布时间:2019-05-25

本文共 1074 字,大约阅读时间需要 3 分钟。

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.

每个数字代表一个种类,每个种类中有多个值,要求在每个种类中都选一个,所组成的所有不同的组合。

class Solution {public:   void dfs(vector
& re, int cur_dep,string& cur_re, string digits){ static string tel_board[] = { "0", "1", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz", }; if(cur_dep == digits.length()){ re.push_back(cur_re); return; } string cur_str = tel_board[digits[cur_dep] - '0']; for (int i = 0; i < cur_str.length(); ++i) { cur_re.push_back(cur_str[i]); dfs(re, cur_dep + 1, cur_re, digits); cur_re.pop_back(); } } vector
letterCombinations(string digits) { vector
re; string cur_re(""); dfs(re, 0, cur_re, digits); return re; }};
注:做完这些题,总结dfs的特点,以及求解dfs的套路。

转载地址:http://vrlji.baihongyu.com/

你可能感兴趣的文章
UIView的使用setNeedsDisplay
查看>>
归档与解归档
查看>>
Window
查看>>
为什么button在设置标题时要用一个方法,而不像lable一样直接用一个属性
查看>>
字符串的截取
查看>>
2. Add Two Numbers
查看>>
17. Letter Combinations of a Phone Number (DFS, String)
查看>>
93. Restore IP Addresses (DFS, String)
查看>>
19. Remove Nth Node From End of List (双指针)
查看>>
49. Group Anagrams (String, Map)
查看>>
139. Word Break (DP)
查看>>
23. Merge k Sorted Lists (Divide and conquer, Linked List) 以及java匿名内部类
查看>>
Tensorflow入门资料
查看>>
剑指_用两个栈实现队列
查看>>
剑指_顺时针打印矩阵
查看>>
剑指_栈的压入弹出序列
查看>>
剑指_复杂链表的复制
查看>>
服务器普通用户(非管理员账户)在自己目录下安装TensorFlow
查看>>
星环后台研发实习面经
查看>>
大数相乘不能用自带大数类型
查看>>