代码编织梦想

题目

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。
给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。

示例

输入:digits = “23”
输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]

解析
func letterCombinations(digits string) []string {
    length := len(digits)
    if length == 0 || length > 4 { //这东西是不是也可以叫剪枝
        return nil 
    }
    digitsMap := [10]string{
        "", // 0
        "", // 1
        "abc", // 2
        "def", // 3
        "ghi", // 4
        "jkl", // 5
        "mno", // 6
        "pqrs", // 7
        "tuv", // 8
        "wxyz", // 9
    }
    res := make([]string, 0)
    recursion("", digits, 0, digitsMap, &res) //0表示第一个数字
    return res
}

func recursion(temp, digits string, index int, digitsMap [10]string, res *[]string) {
    if len(temp) == len(digits) { //终止条件
        *res = append(*res, temp)
        return
    }

    tt := digits[index] - '0' //这里取出来是int类型
    letter := digitsMap[tt] //取map中对应的字符集,类型是string

    for i:=0; i < len(letter); i++ { //注意这个遍历字符串的方式
        temp = temp + string(letter[i]) //拼结果,这里的letter[i]是97这种
        recursion(temp, digits, index+1, digitsMap, res)
        temp = temp[:len(temp)-1] // 回溯
    }
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/midi666/article/details/128071002

leetcode 17 电话号码的字母组合 python实现_uestc_20172222的博客-爱代码爱编程

题目 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:“23” 输出:[“ad”, “ae”, “af”, “b

leetcode17 电话号码的字母组合_计算机动物的博客-爱代码爱编程

已经AC,Python语言描述 思路: 为2~9的电话号码建立哈希表,队列result 初始存放输入的数字字符串首位数字对应的字母列表,如:result=[' a', ' b', ' c' ]队列弹出后与数字字符串的下一位数字对应的字母列表逐个拼接后在入队   这里有个小的需要注意的地方,就是Python的拷贝、‘=’ 引用的区别。因为没有注意到这个

leetcode 17.电话号码的字母组合-爱代码爱编程

leetcode 17.电话号码的字母组合 题目描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 说明:

Java实现 LeetCode 17 电话号码的字母组合-爱代码爱编程

17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:“23” 输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”]. 来源:力扣(LeetCode) 链接:

Leetcode17. 电话号码的字母组合-爱代码爱编程

Leetcode17. 电话号码的字母组合 题目: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 说明: 尽管上面

LeetCode电话号码的字母组合JS实现-爱代码爱编程

电话号码的字母组合 欢迎关注我的博客LeetCode电话号码的字母组合JS实现 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "

Leetcode 17. 电话号码的字母组合-爱代码爱编程

Leetcode 17. 电话号码的字母组合 1、问题分析2、问题解决3、总结 1、问题分析 题目链接:https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/   本质上就是一个深搜问题。代码我已经进行了详细的注释,理解应该没有问题,读者可以作为参考,如果

LeetCode17电话号码字母组合-爱代码爱编程

凡是和排列组合,都可以用DFS做 package DFS; import java.util.ArrayList; import java.util.List; /** *https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/ * @author Q

LeetCode 17 电话号码的字母组合(中等)-爱代码爱编程

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 加粗样式示例: 输入:“23” 输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”]. 思路与代码 回溯 class Solution

leetcode系列--17.电话号码的字母组合-爱代码爱编程

leetcode系列–第17题.电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。\ 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd","ce","c

leetcode高频题17:电话号码的字母组合_冰露可乐的博客-爱代码爱编程

LeetCode高频题17:电话号码的字母组合 提示:本题是系列LeetCode的150道高频题,你未来遇到的互联网大厂的笔试和面试考题,基本都是从这上面改编而来的题目互联网大厂们在公司养了一大批ACM竞赛的大佬们,吃完饭就是设计考题,然后去考应聘人员,你要做的就是学基础树结构与算法,然后打通任督二脉,以应对波云诡谲的大厂笔试面试题!你要是不扎实学习数

leetcode-电话号码的字母组合(c++)_海螺蜜的博客-爱代码爱编程

17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = “23” 输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”] 思路:用

leetcode17电话号码的字母组合(dfs)_leetcode 电话号码的字母组合 dfs-爱代码爱编程

前面见过DFS了,现在来刷一道dfs的模板题来体会一下dfs吧 DFS(深度优先搜索)leetcode——46全排列_Soraku7的博客-CSDN博客 17. 电话号码的字母组合 难度中等1899收藏分享切换为英文接收动态反馈 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如

(python)实现leetcode电话号码的字母组合-爱代码爱编程

描述:         给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。         给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 方法一:         通过递归思想实现,递归的结束条件是nestdigit被读取完毕,长度为0,通过树遍历的方式去构造字符串到conb

(leetcode)电话号码的字母组合_int maxlen = pow(4,len)-爱代码爱编程

 题目要求 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd","ce","cf"] 示例