lintcode-medium-Letter Combinations of a Phone Number
2016-03-25 08:26
567 查看
Givenadigitstring,returnallpossiblelettercombinationsthatthenumbercouldrepresent.
Amappingofdigittoletters(justlikeonthetelephonebuttons)isgivenbelow.
Given
Return
Amappingofdigittoletters(justlikeonthetelephonebuttons)isgivenbelow.
Given
"23"
Return
["ad","ae","af","bd","be","bf","cd","ce","cf"]
publicclassSolution{
/**
*@paramdigitsAdigitalstring
*@returnallposiblelettercombinations
*/
publicArrayList<String>letterCombinations(Stringdigits){
//Writeyourcodehere
if(digits==null||digits.length()==0)
returnnewArrayList<String>();
String[]strs={"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};
ArrayList<String>result=newArrayList<String>();
StringBuilderline=newStringBuilder();
helper(result,line,0,digits,strs);
returnresult;
}
publicvoidhelper(ArrayList<String>result,StringBuilderline,intstart,Stringdigits,String[]strs){
if(start==digits.length()){
result.add(line.toString());
return;
}
intindex=digits.charAt(start)-'0';
for(inti=0;i<strs[index].length();i++){
line.append(strs[index].charAt(i));
helper(result,line,start+1,digits,strs);
line.deleteCharAt(start);
}
return;
}
}
相关文章推荐
- 【ThinkingInC++】65、使用delete void*可能会出错
- google/dense_hash_map
- Hibernate的主键生成策略(hibernate的主键相关问题)
- 避免误删文件:Linux回收站机制
- 安装jdk For Windows
- 【数据结构】链表
- hadoop集群运行小程序wordCount记录
- 分析师观点:数据库安全市场现状与发展趋势
- 应用沙盒介绍
- 如何判断一个对象能不能使用plist
- 开更
- BZOJ_P1682 [Usaco2005 Mar]Out of Hay 干草危机(最小生成树)
- javascript-1.document.getElementById
- plist不能存储自定义对象
- 微软已开发首个中国政府专用 Windows 10
- JS的基础类型与引用类型
- 根据路径拼接文件名
- wifi之物理占用时间与速率和调制模式的关系
- 快速创建调用block
- iOS 之滤镜 详解