怪物奇妙物语

宇宙无敌超级美少男的怪物奇妙物语

首页 新随笔 联系 管理
  819 随笔 :: 0 文章 :: 2 评论 :: 16万 阅读
export {};
const result = letterCombinations("23");
console.log(result);
function letterCombinations(digits: string) {
const map:string[] = [
"",
"",
"abc",
"def",
"ghi",
"jkl",
"mno",
"pqrs",
"tuv",
"wxyz",
];
// 没考虑特殊情况,为空为1的情况,这里可以加上这些情况
// 结果集
const res:string[] = [];
// 路径集
const path:string[] = [];
backtracking(digits, digits.length,0);
return res;
function backtracking(digits:string, depth:number,h:number) {
// 路径的长度等于深度,则表示遍历到叶子结点,然后返回结果
if (path.length === depth) {
res.push(path.join(''));
return;
}
// for循环是横向遍历
// for循环也可以理解成一个取值(或选择)的过程
for (let v of map[Number.parseInt(digits[h])]) {
path.push(v)
backtracking(digits,depth,h+1) //递归
path.pop() //回溯
}
}
}
posted on   超级无敌美少男战士  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示