题目描述
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。
已知数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。
示例:
输入:“23”
输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].
解题思路:
1.若输入的字符串为空则直接返回。
if(index==digits.size())
{
strs.push_back(str);
return ;
}
2.若输入的字符串不为空,以“23”为例 即 string digits=“23”
1)创建输入字符映射出的字符串数组
string letterMap[10]={"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};
2)用 index 找到字符 2 从而找到映射的字符串
string letters=letterMap[digits[index]-'0'];