首页 > 编程语言 >今日回顾-回溯算法-17. 电话号码的字母组合

今日回顾-回溯算法-17. 电话号码的字母组合

时间:2024-01-29 11:01:28浏览次数:26  
标签:digits index 复习 17 res self 回溯 字母组合 path

注意点&感悟:

  • 我知道为什么,当初有些学霸说要复习了。
  • 因为有的知识点,你一遍没学会,自然要重复学习。所为复习,就是再学一遍。
  • 而简单的知识点,就不需要复习了,你已经明显知道自己掌握了,就不需要复习了。
  • 而预习呢?是为了,让提前学一遍,更多的是针对那些上课时间有限,以及学生等不及的情况下,主动去预习。
  • 预习更多的是为了充分利用上课时间,可以有针对性的听。(或者说,为了上课装逼,哈哈哈)
  • ==============
  • 说回来,复习挺好 的,能帮助你链接昨天的知识。

题目链接:17. 电话号码的字母组合

独立写的代码:

查看代码

class Solution:
    def __init__(self):
        self.letterMap=[
            "",
            "",
            "abc",
            "def",
            "ghi",
            "jkl",
            "mno",
            "pqrs",
            "tuv",
            "wxyz"
        ]
    def letterCombinations(self, digits: str) -> List[str]:
        # 补充个异常
        if len(digits)==0:
            return []
        res = []
        # index是独立集合的开始位置
        self.backtracking(digits,0,[],res)
        return res
        ...
    
    def backtracking(self,digits,index,path,res):
        if len(digits) == len(path):
            res.append("".join(path[:]))
            return
        # 因为有多个集合
        wight = self.letterMap[int(digits[index])]
        for i in range(len(wight)): # 遍历abc
            path.append(wight[i])
            self.backtracking(digits,index+1,path,res)
            path.pop()

截图:

标签:digits,index,复习,17,res,self,回溯,字母组合,path
From: https://www.cnblogs.com/liqi175/p/17994064

相关文章

  • k8s笔记17(组播测试代码)
    摘要:mc_svcttl;mc_clittl;mcjoin;smcrouted;ompingk8s笔记13(SMCRoute)_ATCtoK8s空管智能运维的技术博客_51CTO博客(第2项)k8s笔记14_ATCtoK8s空管智能运维的技术博客_51CTO博客(第2、8项)测试OK:(前提k8s-node07和k8s-node08运行smcrouted)--->k8s-node07smcroute.confmgroupfromen......
  • hihocoder#1707 麻烦的第K大问题
    由区间第\(x\timesy\)大又到多重集第\(k\)大从普通的元素到我们要求的\(ans\)之间是有大小关系的(在区间内\(<-->\)区间第\(x\timesy\)大\(<-->\)多重集内第\(k\)大)再加上二分时产生的单调性:此时设二分的值为\(mid\),标记数组为\(b[]\)\[b_i=\begin{cases}......
  • NSSCTF Round#17 Basic CRYPTO
    Level_1题目Level_1.py(我把参数整理了一下,看着舒服)#真签到题fromCrypto.Util.numberimportbytes_to_long,getPrimefromsecretimportgetflagp=getPrime(1024)q=getPrime(1024)n=p*qm=bytes_to_long(getflag().encode())c1=pow(m,p,n)c2=pow(m,......
  • 2024最新苹果iOS17.3微信分身详解分享
    微信是目前最流行的社交软件之一,拥有庞大的用户群体。然而,对于一些需要同时使用多个微信账号的用户来说,使用官方版微信就显得有些不方便。iOS分身微信软件可以解决这个问题,它可以让用户在同一台设备上同时登录多个微信账号,从而实现工作生活两不误。iOS分身微信软件的优势iOS......
  • Windows Server 2012 R2 安装 Visual C++ Redistributable (VC_redist.x64) 失败 0x80
    PHP8需要 VisualC++RedistributableforVisualStudio2019,但怎么都装不上,有个0x80240017-未指定的错误。 看日志 Windows8.1-KB2999226-x64.msu好像有补丁安装失败了,网上找到一篇解决办法:https://blog.51cto.com/u_12701820/3032471能成功安装VC,但是PHP8无法......
  • 谭浩强 第5版 第5章 第17题
    题目:两个乒乓球队进行比赛,各出三人。甲队为A,B,C3人,乙队为X,Y,Z3人。已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比,请编程序找出3对赛车的名单。分析:通过分析题目,我们可以很直观地想到:利用3个for循环,遍历一遍。直到满足限制条件时跳出来即可。题目中有2......
  • iOS 17.4 测试版包含大模型相关代码
    外界普遍预计苹果将在6月份通过iOS18推出主要的新人工智能功能。不过根据9to5Mac的报道,他们在iOS17.4第一个测试版中发现的代码表明,苹果正在开发由大语言模型技术支持的Siri新版本,并得到了其他来源的一些帮助。所谓其他来源是指苹果似乎正在使用OpenAI的ChatGPTA......
  • 寒假生活(17)
    今天继续python的学习,今天的主要内容是连接数据库操作,我学习了3种常见的数据库的连接方式并一一实验,现将模板整理出来。当使用Python进行数据库访问时,通常会使用数据库接口模块(DatabaseInterfaceModule)来连接和操作数据库。Python标准库中包含了一些用于不同类型数据库访问的模......
  • day25 代码随想录算法训练营 17. 电话号码的字母组合
    题目:17.电话号码的字母组合我的感悟:一时间没理解没关系,只要不放弃,就会成长!!!理解难点:index是独立集合的起点,需要理解它。有些东西就是时间的积累代码难点:代码示例:classSolution:def__init__(self):self.letterMap=["",#0......
  • CF1174E Ehab and the Expected GCD Problem
    EhabandtheExpectedGCDProblemLuoguCF1174E题目描述\(p\)是一个排列,定义\(f(p)\):设\(g_i\)为\(p_1,p_2,\cdots,p_i\)的最大公因数(即前缀最大公因数),则\(f(p)\)为\(g_1,g_2,\cdots,g_n\)中不同的数的个数。设\(f_{max}(n)\)为\(1,2,\cdots,n\)的所有排......