17. 电话号码的字母组合

简介: 17. 电话号码的字母组合

题目描述

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。

给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。

解题思路

这个题目显然直接枚举就可以,那么我们现在考虑的是如何进行枚举。

我们先枚举一下:

我们要的是ad,ae…。

这不就相当于中序遍历嘛。

那么我们就可以用递归的方式来求这个字符串了。

注意全局变量,参数,函数返回值的设计。

代码

class Solution {
        unordered_map<char,string> hash={
            {'2',"abc"},
            {'3',"def"},
            {'4',"ghi"},
            {'5',"jkl"},
            {'6',"mno"},
            {'7',"pqrs"},
            {'8',"tuv"},
            {'9',"wxyz"}
        };
        vector<string> ret;
public:
    vector<string> letterCombinations(string digits) {
        if(digits.size()==0) return {};
        dfs(digits,0,"");
        return ret;
    }
    void dfs(string& digits,int pos,string s)
    {
        if(pos>=digits.size())
        {
            ret.push_back(s);
            return ;
        } 

        for(auto ch:hash[digits[pos]])
        {
            dfs(digits,pos+1,s+ch);
        }
        
    }
};
目录
打赏
0
1
1
0
21
分享
相关文章
动态代理IP有哪些应用场景?要怎么挑选适合自己的?
本文介绍了动态代理IP在人工智能、舆情洞察、市场研究及数据采集等业务场景中的应用,并详细探讨了挑选优质动态代理IP的关键因素,包括稳定性、速度、安全性、价格及客户服务。通过综合考量这些因素,希望能帮助读者更好地理解和运用动态代理IP,推动业务发展。
【系统启动】uboot启动流程源码分析
【系统启动】uboot启动流程源码分析
324 0
九.SpringCloudAlibaba极简入门-持久化Sentinel限流规则
在前两章节我们学习了通过[Sentinel的限流和熔断机制](https://blog.csdn.net/u014494148/article/details/105484410)来保护微服务,提高系统的可用性,但是有一个问题,我们在Sentinel配置了限流,熔断策略,默认情况下Sentinel的数据是基于内存存储,当客户端断开,或者Sentinel重启数据就会丢失,这不是我们愿意看到的。所有我们需要的Sentinel做数据持久。 Sentinel 中支持5种持久化的方式:file、redis、nacos、zk和apollo,本片文章针对于Nacos进行持久化配置。
春招启动!吐血分享!腾讯一面实录: 请5min实现单例模式!
春招启动!吐血分享!腾讯一面实录: 请5min实现单例模式!
79 0
OSS(一):OSS工具类
阿里云现在很多公司都在用,阿里云稳定,安全,相对来说成本更低;给自己更多思考的是如何让项目减少成本,以及阿里云等带来的商业模式。
1312 1
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
3413 0
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
Echarts显示随机颜色的函数解决方案
Echarts显示随机颜色的函数解决方案
241 0
Linux-Copy On Write写时复制机制初探
Linux-Copy On Write写时复制机制初探
256 0
通过备案的域名访问,不需要添加端口号(nginx反向代理,直接域名访问)
通过备案的域名访问,不需要添加端口号(nginx反向代理,直接域名访问)
1131 0
通过备案的域名访问,不需要添加端口号(nginx反向代理,直接域名访问)
干货一:通过自定义PopupWindow实现QQ菜单选项功能
干货一:通过自定义PopupWindow实现QQ菜单选项功能
113 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问