题目

题解:回溯
JavaScript
var letterCombinations = function(digits) {
if (digits.length == 0) return []
const res = []
const map={'2': 'abc', '3': 'def', '4': 'ghi', '5': 'jkl', '6': 'mno', '7': 'pqrs', '8': 'tuv', '9': 'wxyz' }
const dfs=(cur_str,next_digits)=>{
if(next_digits.length == 0){
res.push(cur_str)
return
}
const letters = map[next_digits[0]]
for(const letter of letters){
cur_str += letter
dfs(cur_str, next_digits.slice(1))
cur_str = cur_str.slice(0,-1)
}
}
dfs('',digits)
return res
};
python
class Solution:
def letterCombinations(self, digits: str) -> List[str]:
if not digits:
return []
a = {"2": "abc", "3": "def", "4": "ghi", "5": "jkl", "6": "mno", "7": "pqrs", "8": "tuv", "9": "wxyz"}
def backtrack(combination, next_digits):
if len(next_digits) == 0:
result.append(combination)
else:
current_digit = next_digits[0]
letters = a[current_digit]
for letter in letters:
combination += letter
backtrack(combination, next_digits[1:])
combination = combination[:-1]
result = []
backtrack("", digits)
return result
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人