Letter Combinations of a Phone Number

来源:互联网 发布:得力考勤机数据导出 编辑:程序博客网 时间:2024/05/01 19:36

一、问题描述

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"].

二、思路

将数字对应的字符存入chamap中,这样我们可以一次遍历每一个数字对应字符串的每一个字符。

三、代码

class Solution {public:    vector<string> letterCombinations(string digits) {        vector<string> v;        int n = digits.size();        if(n == 0)    return v;        v.push_back("");        string charmap[10] = {"0", "1", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};        for(int i = 0; i < n; ++i){            vector<string> temp;            string chars = charmap[digits[i] - '0'];            for (int j = 0; j < chars.size(); j++)                for (int k = 0; k < v.size(); k++)                    temp.push_back(v[k] + chars[j]);            v = temp;        }        return v;    }};


0 0
原创粉丝点击