Letter Combinations of a Phone Number

来源:互联网 发布:淘宝哪里取消申请退款 编辑:程序博客网 时间:2024/06/06 11:49

题目大意:给定一串数,要求转换成能表示它的字符串的所有形式。

解题思路:深度遍历


class Solution {public:    vector<string> letterCombinations(string digits) {        string d[10] = {"", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};        vector<string> result;        if(digits.size() == 0) {            return result;        }        string str;        dfs(result, str, 0, digits, d);        return result;    }private:    void dfs(vector<string> &result, string &str, int index, const string &digits, string d[]) {        if(index == digits.size()) {            result.push_back(str);            return;        }        int i = (int)(digits[index] - '0');        for(int k = 0; k < d[i].size(); k++) {            str.push_back(d[i][k]);            dfs(result, str, index + 1, digits, d);            str.pop_back();        }    }};


0 0
原创粉丝点击