当前位置: 首页 > news >正文

leetcode 17 电话号码的字母组合

一、题目描述

二、解题思路

整体思路

画出解决问题的决策树,我们可以采用回溯的方法来解决这个问题。

具体思路

以示例一为例,决策树如下:

(1)函数功能:dfs函数用于寻找index层开始的后面层的所有组合;

(2)递归出口:当path的长度等于digits的长度时,表示列举完整,将path加入ret;

(3)函数体

<1>哈希表hash用于将数字字符与字符串对应起来;

<2>处理当前层,从0号位置到str.size()-1位置进行循环,将str[i]加入path;

<3>dfs递归处理下面一层;

<4>回溯,恢复现场;

三、代码实现

class Solution {vector<string> ret;string path;unordered_map<char,string> hash;
public:vector<string> letterCombinations(string digits) {if(digits.empty()) return ret;//填充hash表hash['2']="abc";hash['3']="def";hash['4']="ghi";hash['5']="jkl";hash['6']="mno";hash['7']="pqrs";hash['8']="tuv";hash['9']="wxyz";dfs(digits,0);return ret;    }void dfs(string digits,int index){//递归出口if(path.size()==digits.size()){ret.push_back(path);return ;}char digit=digits[index];string str=hash[digit];for(int i=0;i!=str.size();i++){path.push_back(str[i]);//递归处理后面的层dfs(digits,index+1);//回溯path.pop_back();}}
};

http://www.dtcms.com/a/432201.html

相关文章:

  • 秦皇岛建设网站公司哪家好wordpress+缩略图截图
  • 域名建设好了怎么在建设网站wordpress 值得买主题
  • SpringBoot11-Spring Validation讲解
  • 上的网站app免费大全个人站长适合做什么网站
  • 我们提供的网站建设易语言如何做代刷网站
  • 中断控制器介绍-软件篇(linux)
  • 怎么学做淘宝免费视频网站wordpress 主机安装
  • 社区类网站建设的例子四川建设厅官方网站四库一平台
  • 【PID学习】PID算法改进
  • 引流推广app网站改版对seo影响
  • 南京代做网站h5编辑器有哪些软件
  • 在Zotero中配置PDF2zh插件并使用详细教程
  • 做图有什么网站河池市民政局门户网站建设
  • 10大免费软件下载网站wordpress模板克隆
  • MASM数据段完全指南:从基础定义到高级内存操作
  • 提供视频下载的网站做学术用的网站
  • 官方网站建设实训心得网站seo优化主要有哪些手段
  • 17.仅使用 CSS 实现的导航标签页,带滑动菜单指示器
  • 【LeetCode 每日一题】1470. 重新排列数组——(解法一)构造数组
  • 商城网站合同设计公司网站需要考虑什么
  • 银川建设网站简约的网页设计
  • 【人工智能通识专栏】第三十二讲:本地化部署模型
  • 网站怎么加关键词深圳网站建设公司小江
  • 网站开发人员介绍做网站首页看不到图片
  • ORB_SLAM2原理及代码解析:MapPoint::AddObservation() 函数
  • 炉石做任务抽奖网站装宽带一年大概需要多少钱
  • 个人网站建立 学生哈尔滨学校网站建设
  • 网站用什么软件做败sp个人网站app
  • 适合建设网站的国外服务器晋城市网站建设
  • 西安做商铺的网站网站设计公司费用