电话号码的字母组合(python)

问题描述:

依旧是组合问题,不过之前是一个集合,这里是多个集合。

用一个哈希表存储数字和字母的对应关系。

mp={"0":"","1":"","2":"abc","3":"def","4":"ghi","5":"jkl","6":"mno","7":"pqrs","8":"tuv","9":"wxyz"}

复制代码
#电话号码字母组合
import sys
sys.setrecursionlimit(1000000)
def f(s):   #:"23"
    res=[]
    path=[]
    n=len(s)
    mp={"0":"","1":"","2":"abc","3":"def","4":"ghi","5":"jkl","6":"mno","7":"pqrs","8":"tuv","9":"wxyz"}
    def dfs(idx):   #遍历到s的第几个数字
        if idx==n:  #超过了数字最大索引,就收集结果
            res.append("".join(path[:]))
            return
        for i in range(len(mp[s[idx]])):
            ch=mp[s[idx]][i]
            path.append(ch)
            dfs(idx+1)
            path.pop()
    dfs(0)
    print(res)
    return
def main():
    s=input().strip()
    f(s)
if __name__=="__main__":
    main()
相关推荐
安_7 小时前
如何构建和使用向量索引?HNSW 和 IVF 有什么区别?
python·ai
counting money8 小时前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
坚持学习前端日记9 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
北斗落凡尘9 小时前
LangGraph 入门实战(11)--输出模式
后端·python·langchain
雪碧聊技术10 小时前
安装Python(保姆级教程)
python·版本更新·python下载
++==10 小时前
JSON和Python的 四种核心容器
python·json
张龙68712 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python
@HNUSTer13 小时前
Python数据可视化科技图表绘制系列教程(八)
python·数据可视化·科技论文·专业制图·科研图表
专注仿真14 小时前
问答大模型技术方案算法实现-熵权法融合算法 + 交叉编码器重排算法
人工智能·python·算法·语言模型·问答大模型关键算法·熵权融合算法·交叉编码器重排算法
满怀冰雪14 小时前
22-使用 PaddleClas 快速训练图像分类模型
人工智能·python·机器学习·分类·数据挖掘·paddlepaddle