LeetCode重点题系列之【17. Letter Combinations of a Phone Number】

Ubuntu使用cmake出现Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed 解决 Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed 阅读详情

Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent.

A mapping of digit to letters (just like on the telephone buttons) is given below. Note that 1 does not map to any letters.

Example:

Input: "23"
Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].

Use recursion to select only one element from each bucket.

class Solution(object):
    def letterCombinations(self, digits):
        if not digits:
            return []
        dic = {"2":"abc", "3":"def", "4":"ghi", "5":"jkl", "6":"mno", "7":"pqrs", "8":"tuv", "9":"wxyz"}
        res=[]
        self.helper(0,"",res,digits,dic)
        return res
        

    def helper(self,index,cur,res,digits,dic):
        if len(cur)==len(digits):
            res.append(cur)
            return
        for item in dic[digits[index]]:
            self.helper(index+1,cur+item,res,digits,dic)

 感觉这题可以总结个模板,如果要从多个list里面各选一个元素,那么

class Solution(object):
    def combination_several_list(self,nums):
        res=[]
        self.helper(0,[],res,nums)
        return res


    def helper(self,index,cur,res,nums):
        if len(cur)==len(nums):
            res.append(cur[:])
            return
        for item in nums[index]:
            self.helper(index+1,cur+[item],res,nums)

print(Solution().combination_several_list([[1,2,3],[4,5,6],[7,8,9]]))

 

Python爬虫实战:手把手教你如何抓取农作物品种名录,构建标准化种业索引数据库! 我长期专注 Python 爬虫工程化实战,主理专栏 《Python爬虫实战》:从采集策略到反爬对抗,从数据清洗到分布式调度,持续输出可复用的方法论与可落地案例。内容主打一个“能跑、能用、能扩展”,让数据价值真正做到——抓得到、洗得净、用得上。 阅读详情

相关推荐

基于光电传感的非接触式酒精浓度检测系统设计与实现

本文详细介绍了基于光电传感技术的非接触式酒精浓度检测系统设计与实现。系统利用940nm红外LED和OPT101光电传感器,结合朗伯-比尔定律,通过STM32微控制器进行信号采集与处理,实现了快速、准确的酒精浓度测量,测量精度达±1%,适用于工业检测和便携式应用场景。

y7z8a的博客 365

Leetcode Letter Combinations of a Phone Number

Given a digit string, return all possible letter combinations that the number could represent. A mapping of digit to letters (just like on the telephone buttons) is given below. Input:Digit st

每天都要有进步 256

5分钟搞定!用ZLMediaKit+GB28181搭建低成本外网视频监控(含避坑指南)

本文详细介绍了如何利用开源ZLMediaKit流媒体服务器与国标GB28181协议,快速搭建低成本、可外网访问的企业级视频监控系统。文章提供了从服务端部署、设备配置到外网访问优化的完整实战指南,并重点分享了网络配置、性能调优及常见问题的避坑方案,帮助用户实现高清视频流的稳定推送与多格式播放。

bush的博客 332

Lintcode425 Letter Combinations of a Phone Number solution 题解

【题目描述】 Given a digit string excluded01, return all possible letter combinations that the number could represent. A mapping of digit to letters (...

chinantiao4998的博客 177

YOLOv8环境搭建+训练自己的数据详细项目

直接按照路径会有问题,找到自己 requirements.txt 文件路径,我这里是pip install -r D:\ultralytics-main\ultralytics-main\requirements.txt。首先去自己的anaconda的安装的envs(虚拟环境),在导航栏输入cmd,进入命令窗口。到官方网站下载yolo模型 ,下载好后解压,里面有个文件requirements.txt。然后安装ultralytics ,这是必须的。

m0_63172128的博客 2万+

从安装到出图:一份给振动测试新手的LMS Test.Lab 2021完整避坑手册(含许可证更新和常见弹窗解决)

本文为振动测试新手提供LMS Test.Lab 2021的完整使用指南,涵盖安装配置、许可证更新、数据采集到频域后处理的全流程。特别针对常见弹窗错误提供解决方案,并详细讲解Colormap时频图分析技巧,帮助用户快速掌握振动数据分析核心技能。

weixin_29268331的博客 985

Leetcode 17 Letter Combinations of a Phone Number

题意为输出所有按键可能表示的字母组合。 因为不知道按键组合有多长,所以可以用搜索来做, 为了效率我用的是BFS,不过好像也没快到哪里去。 先打印出字典表,用队列进行搜索,算法的复杂度最优就行了,不必在意常数项的问题。

无名山丘,崛起成峰 4380

115.工业相机海康SDK开发指南(阅读)

包含初始化SDK和反初始化SDK接口。(由于看不到函数内部的具体实现,因此以下的解释仅代表个人的理解)

weixin_63779802的博客 5994

17. Letter Combinations of a Phone Number

Given a digit string, return all possible letter combinations that the number could represent. A mapping of digit to letters (just like on the telephone buttons) is given below. Input:Digit st

Bryan要加油 811

NXP S32k3 MCAL EMIOS PWM配置

NXP s32k 配置 EMIOS PWM

Leon_0125的博客 2702

《SAP FICO系统配置从入门到精通共40篇》030、集成配置:FI与生产计划(PP)的自动科目确定

FI和PP的自动科目确定,本质上是把生产业务翻译成会计语言。翻译规则就藏在那些配置表里。配的时候多想一步:这个业务动作,在财务眼里是什么?是材料消耗?是产出入库?还是工费分摊?想清楚这个,再看配置界面,那些代码就不是天书了。最好的测试方式,是月底关账前,让生产部门跑一遍所有类型的生产订单。配置对不对,业务最知道。

985大学毕业,前某大厂员工,啥都会点的程序员! 575

Letter Combinations of a Phone Number

Given a digit string, return all possible letter combinations that the number could represent. A mapping of digit to letters (just like on the telephone buttons) is given below. Input:Digit st

u011918382的博客 287

MuJoCo 入门教程(八)Model仓库

一个物理仿真器的好坏取决于它所仿真的模型,而在像 MuJoCo 这样功能强大、建模选项众多的仿真器中,很容易创建出行为与预期不符的 "坏 "模型。MuJoCo Menagerie 的目标是为社区提供一个设计精良、开箱即用的模型集。更多信息,请访问 Menagerie 资源库。

机器人控制与仿真应用 1940

Leetcode 17. Letter Combinations of a Phone Number(python+cpp)

Leetcode 17. Letter Combinations of a Phone Number题目解析 题目 解析 这题实际上是一个无重复combination的模板题,只需要对1做一下特殊处理即可 关于combination和permutation的总结,看这里: 代码: class Solution: def letterCombinations(self, digits: str) -> List[str]: def backtracking(comb,level

qq_37821701的博客 538

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

leetcode-17 Letter Combinations of a Phone Number

问题描述: Given a digitstring, return all possible letter combinations that the number couldrepresent. A mapping of digitto letters (just like on the telephone buttons) is given below. Input:Digi

woliuyunyicai的专栏 1048

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Java JSON转换实战:从List泛型陷阱到安全高效解析

JSON作为现代应用开发中数据交换的事实标准,其序列化与反序列化是每位开发者的基本功。理解其核心原理,关键在于掌握如何将文本格式的数据结构映射为内存中的对象模型。这一过程的技术价值在于保障数据在不同系统间可靠、高效地流转,是构建微服务通信、前后端接口和缓存系统的基石。在实际应用场景中,`json转List`和`json转对象`是最常见但易出错的操作,尤其是Java泛型擦除机制带来的`ClassCastException`风险。本文以`Jackson`和`Gson`等主流库为例,深入剖析如何正确使用`Type

weixin_30267785的博客 298

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

[Leetcode] Letter Combinations of a Phone Number

每个数字对应多个字符,给定一个数字串,给出所有与这个数字串对应的字符串。 一、使用递归的方式最容易想到了 1 import java.util.*; 2 3 public class Solution { 4 void backtree(String digits,int index,String numgroup[],List<String> strs...

weixin_30335353的博客 71

Leetcode 17.电话号码的字母组合 - Letter Combinations of a Phone Number - Python - 回溯法

这道题有一点很有趣的地方是,你需要先遍历给定的digits字符串,此处可想象成树型结构。digits字符串的长度即树的深度。而遍历字符串,在此处,是以递归的方式进行的。而abc,和def之间的排列组合,是通过多个for循环嵌套进行的(之所以这么说,是因为一个递归里面有一个for循环,多次递归调用里,在逻辑上,就隐含着多个for循环。并不是说实际上在代码字面上有多层嵌套的for循环)。3.确定单层遍历逻辑;1.回溯函数的参数;

rendalian的博客 563

leetcode -- Letter Combinations of a Phone Number -- 重点

https://leetcode.com/problems/letter-combinations-of-a-phone-number/先手工枚举,构造解空间树.标准dfs求解。class Solution(object): def dfs(self, digits, target_lvl, mydict, subres, res): lvl = len(subres)

xyqzki的专栏 496

[Leetcode学习-c++&java] Letter Combinations of a Phone Number(电话号码-字母组合)

问题: 难度:medium 说明: 按照平时的电话号码来按按键,获得对应的字母,那么平时的电话按键是这样的: 1 - "" 2 - "abc" 3 - "def" 4 - "ghi" 5 - "jkl" 6 - "mno" 7 - "pqrs" 8 - "tuv" 9 - "wxyz" 那么输入如果是 23 就是按了 2 3 对应的电话按钮,会出现2 和 3 两个按钮的字母组合,如案例展示。其中 1 是什么都没有 题目连接:https://leetcode.com/problem...

qq_28033719的博客 273

LeetCode Hot 100 | 回溯专题(C++ 题解)

回溯下篇继续深入,涵盖括号生成、矩阵路径搜索、回文切割和 N 皇后四道经典题目。这些题目均以 DFS + 剪枝为核心,重点在于如何设计递归边界和状态还原。题号题目难度核心技巧时间复杂度22括号生成🟡中等DFS + left/right 计数剪枝O(4^n/√n)79单词搜索🟡中等DFS + visit 标记 + 四方向搜索O(m×n×4^L)131分割回文串🟡中等DFS + 回文判断 + 回溯O(n×2^n)51N 皇后🔴困难DFS + 三集合剪枝O(n!

jcm0903的博客 372

【职业】算法与数据结构专题

做点什么

sinat_38368658的博客 1002

leetcode之Letter Combinations of a Phone Number

原题如下: Given a digit string, return all possible letter combinations that the number could represent. A mapping of digit to letters (just like on the telephone buttons) is given below. Inp

momentforver的专栏 557

LeetCode重点题系列之【583. Delete Operation for Two Strings】

Given two wordsword1andword2, find the minimum number of steps required to makeword1andword2the same, where in each step you can delete one character in either string. Example 1: Input: "sea...

肖冬禹要拿offer的博客 529

LeetCode重点题系列之【42. Trapping Rain Water】

Givennnon-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining. The above elevation map is represented by array...

肖冬禹要拿offer的博客 388
上一篇: LeetCode重点题系列之【15. 3Sum】
下一篇: LeetCode重点题系列之【20. Valid Parentheses】
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值