电话号码对应的字符组合:在电話或者手机上一个数字如2对应着字母ABC,7对应着PQRS那么数字串27所对应的字符的可能组合就有3*4=12种(如AP,BR等)现在输入一个3到11位长的电话号碼,请打印出这个电话号码所对应的字符的所有可能组合和组合数
题目意思是假如输入23456,最终形成的字符串是由2对应 “adc” 中取一个字符3对应的 “def” 中取一个字符,4对应的“ghi”中取一个字符5对应的 “jkl” 中取一个字符,6对应的“mno”中取一个字符一共有3*3*3*3*3*3=3^6种结果。
把每个数芓当作递归的一层每一层中先枚举一个字母,递归进入下一层再删除这个字母,回到上一个状态枚举下一个字母。递归结束标志是遞归了digits.lengtgh即字母组合长度等于digits长度,递归结束得到一个符合的字母组合加入list。等于是在循环中套递归
* 解决电话号码的字母组合问题 // 电話号码所对应的字母 * 判断电话号码是否为空,如果为空,返回空集合,否则返回组合后的结果 * @return 电话号码的字母组合后的结果 // 利用集合保存组合结果 * 计算电话号码的字母组合 // 是否处理到电话号码的末尾 // 当前号码为0或者1时直接跳过
发布了24 篇原创文章 · 获赞 18 · 访问量 2万+