Status
完成
列 2
列 3
O(n * 4^n)
列 4
O(1)
列 5
Medium
列 6
列 7
// Time: O(n * 4^n)
// Space: O(1)
// iterative solution
class Solution {
public:
vector<string> letterCombinations(string digits) {
static const vector<string> lookup = {" ", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
};
// Time: O(n * 4^n)
// Space: O(1)
// iterative solution
class Solution2 {
public:
vector<string> letterCombinations(string digits) {
static const vector<string> lookup = {" ", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
};
// Time: O(n * 4^n)
// Space: O(n)
// recursive solution
class Solution3 {
public:
vector<string> letterCombinations(string digits) {
if (empty(digits)) {
return {};
}
vector<string> result;
string curr;
letterCombinationsRecu(digits, &curr, &result);
return result;
}
private:
void letterCombinationsRecu(const string &digits, string *curr, vector<string> *result) {
static const vector<string> lookup = {" ", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
};