宝哥软件园

JS实现电话号码的字母组合算法示例

编辑:宝哥软件园 来源:互联网 时间:2021-08-27

本文实例讲述了射流研究…实现电话号码的字母组合算法。分享给大家供大家参考,具体如下:

给定一个仅包含数字2-9 的字符串,返回所有它能表示的字母组合。

给出数字到字母的映射如下(与电话按键相同)。注意一不对应任何字母。

示例:

输入:'23'输出:['ad ',' ae ',' af ',' bd ',' be ',' bf ',' cd ',' ce ',' cf'].

说明:

尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。

var letterCombinations=function(digits){ const mappings={ ' 2 ' :[' a ',' b ',' c'],' 3': ['d ',' e ',' f'],' 4': ['g ',' h ',' i'],' 5': ['j ',' k ',' l'],' 6': ['m ',' n ',' o'],' 7 ' 3:[' p ',' q ',' r ',' s ',' 8 'if(数字| |数字。length===0)return[];if(digits . length===1){ 0返回映射[数字];}让结果=[];让set1=字母组合(digits.substr(0,1));让set2=字母组合(数字。substr(1));用于(设I=0;我设置1 .长度;i ) {对于(让j=0;j set2。长度;j){结果。推送(集1[I]集2[j]);} }返回结果;};控制台。log(letterCombinations(' 23 ')var letterCombinations 1=function(digits){ var map={ ' 2 ' :[' a ',' b ',' c'],' 3': ['d ',' e ',' f'],' 4': ['g ',' h ',' i'],' 5': ['j ',' k ',' l'],' 6 ' 33:[' m ',' n ',' o'],' 7 ' 3333:[' var数字[0]];数字=数字。substr(1);数字. split(').forEach(函数(数字){ var t=[];地图[数字]。forEach(函数(字母){ t=t . concat(RTN。map(function(item){ return item letter;}));});RTN=t;});返回rtn===未定义?[]: RTN;};控制台。日志(字母组合1(' 32 ')使用在线HTML/CSS/JavaScript代码运行工具:http://工具。JB 51。net/code/HTMljsrun测试上述代码,可得如下运行结果:

更多关于Java脚本语言相关内容感兴趣的读者可查看本站专题: 《JavaScript数学运算用法总结》 、 《JavaScript数据结构与算法技巧总结》 、 《JavaScript数组操作技巧总结》 、 《JavaScript排序算法总结》 、 《JavaScript遍历算法与技巧总结》 、 《JavaScript查找算法技巧总结》 及《JavaScript错误与调试技巧总结》

希望本文所述对大家Java脚本语言程序设计有所帮助。

更多资讯
游戏推荐
更多+