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

力扣-17.电话号码的字母组合

题目描述

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

给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。
在这里插入图片描述

class Solution {List<String> res = new ArrayList<>();String[] letterMap = {"", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};StringBuffer path = new StringBuffer();void backtracking(String digits, int index) { //如digits是"23",index是0if (digits.length() == path.length()) {res.add(path.toString());return;}int num = digits.charAt(index) - '0';String str = letterMap[num];	//如str是"abc"for (int i = 0; i < str.length(); i++) {path.append(str.charAt(i));backtracking(digits, index + 1);path.delete(path.length()-1, path.length());}}public List<String> letterCombinations(String digits) {if(digits.length()==0)return res;backtracking(digits, 0);return res;}
}

小结:中断了好多天回归刷题,这道题需要注意的是Java的String和数组的API与C++有很多不同,比如"23"找到2对应的"abc"和3对应的"def",之后套用回溯的模板,注意index是什么,i是什么,不要弄乱。

相关文章:

  • LeetCode--24.两两交换链表中的结点
  • Java 常用 API 分类总结(算法竞赛考前速记篇)- 适用于算法竞赛(如 CCF CSP、蓝桥杯、NOI)
  • 音频剪辑软件少之又少好用
  • 13-Oracle 23ai Vector Search VECTOR数据类型和实操
  • 计算机组成原理:计算机发展历程
  • 东芝Toshiba e-STUDIO2110AC打印机信息
  • 基于IDA的bindiff使用
  • BeckHoff(倍福) PLC 顺控器执行超时故障在北尔触摸屏显示的实现
  • gis geoserver 地图发布
  • “硅仙人”吉姆·凯勒(Jim Keller)
  • Riverpod与GetX的优缺点对比
  • iview框架主题色的应用
  • OGG 23ai for DAA 部署与补丁升级
  • C++常用的自动化测试库
  • 从游戏到自动驾驶:互联网时代强化学习如何让机器学会自主决策?
  • Android 相对布局管理器(RelativeLayout)
  • 自然语言处理 目录篇
  • STM32开发,创建线程栈空间大小判断
  • 深圳SMT贴片工艺优化关键步骤
  • IDEA黑色主题,控制台日志为黑色(看不清),问题解决 配置Grep Console
  • 淘宝的网站建设/seo搜索排名优化公司
  • 网站建设工具品牌/北京cms建站模板
  • 化妆品手机端网站模板/竞价推广哪里开户
  • 做装修的人到什么网站找工作/免费建站免费推广的网站
  • 做网站的备案/百度热榜
  • 网站建设哪家/付费推广