把数字翻译成字符串 java递归解法 力扣面试题46

面试题:把数字翻译成字符串 给定一个数字,我们按照如下规则把它翻译为字符串:0翻译成“a”,1翻译成“b”,·······,25翻译成“z”。一个数字可能有多个翻译。例如,12258有5种不同的翻译,分别是“bccfi”、"bwfi"、"bczi"、"mcfi"和"mzi"。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 思路:经过本书前面200多页的洗礼,对这道题的不再那么难接受了。目前这么想,把这数字拆成 阅读详情

```java
class Solution {
    public int translateNum(int num) {
        if(num < 10){
            return 1;
        }
        int nums = num%100;
        if(nums < 10){
            return translateNum(num/10);
        } else if(nums < 26){
            return translateNum(num/100) + translateNum(num /10);
        } else {
            return translateNum(num/10);
        }
    }
}

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200609133051586.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N0dWRlbnRfamF2YV9j,size_16,color_FFFFFF,t_70)

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/

欢迎大佬赐教

Java金字塔图案:从for循环到工程化设计的必修课 金字塔图案是编程入门中理解循环结构、坐标映射与控制流逻辑的经典载体。它本质是二维坐标系下的规律性字符填充问题,涉及嵌套循环、边界计算、变量作用域等Java核心基础。通过空格数=n-i、星号数=2*i-1等数学建模,可将图形需求转化为可执行代码,显著强化‘人脑→机器指令’的具象转化能力。该模式广泛应用于技术面试、算法热身与防御性编程训练,是检验循环掌握深度与工程思维雏形的关键标尺。本文以实心/空心/数字金字塔为线索,贯穿输入校验、分层架构与模块封装,直击Java初学者在for循环、Scanner资源管理及输出 阅读详情

相关推荐

Java-Study

基础环境搭建。

skx13613650153的博客 473

[剑指offer][JAVA]面试题第[46]题[把数字翻译成字符串][递归][逆推]

【问题描述】[中等] 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi" 提示: 0 <= num < 231 【解答思路】 1. 动态

dadongwudi的博客 235

UE5 使用Slate制作对话窗口

使用Slate制作对话框窗口并获取对话框结果,非UMG

qq_25521145的博客 3190

java递归算法总结

1.何为递归 个人理解就是自己调用自己,直到满足一个条件结束自己调用自己的过程,这个就是递归。举一个通俗的点的例子: 假设你在一个电影院,你想知道自己坐在哪一排,但是前面人很多,你懒得去数了,于是你问前一排的人「你坐在哪一排?」,这样前面的人 (代号 A) 回答你以后,你就知道自己在哪一排了——只要把 A 的答案加一,就是自己所在的排了,不料 A 比你还懒,他也不想数,于是他也问他前面的人

不忘初心的博客 2万+

第二章 零差云控关节模组内部构造

对零差云控的eRob70I进行了拆解

SFY__优快云的博客 5994

OpenGL纹理贴图

OpenGL纹理1. 基本概念2. 纹理环绕方式3. 纹理过滤3.1 GL_NEAREST3.2 GL_LINEAR3.3 多级渐远纹理 (Mipmap)4. 纹理加载与创建4.1 纹理加载4.2 纹理创建4.3 纹理的使用 1. 基本概念 纹理是一个2D图片(甚至也有1D和3D的纹理),它可以用来表示物体的细节特征,希望绘制一个有足够多细节的物体,当然可以用足够多的顶点颜色来描述,但是无疑也增加了许多额外的开销;另一种办法就是使用纹理。 学习之前先展示一张实现的纹理图以更好理解纹理! 还是这张图为了将纹

牵LV小猪精的博客 8931

力扣 面试题46. 把数字翻译成字符串 dp

https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/ 思路:为了方便,我们把输入转换成一个字符串,并且下标从111开始,用dp[i]dp[i]dp[i]表示s[1…i]s[1…i]s[1…i]对应的数字有多少种不同的翻译方法。显然单个数字一定可以对应一种翻译方法,所以有dp[i]+=dp[i−1]dp[...

xiji333的博客 461

多孔材料吸附性质模拟程序RASPA的离线和在线安装方法

RASPA-2.0是今年美国西北大学教授Randall Q. Snurr等人开发的针对于MC,MD,分子力学优化等用途的程序,相比于之前开发的MUSIC软件,RASPA的功能更加齐全,操作更加简便,可以在MC的吸附过程中考虑骨架的柔性,也可以想MUSIC一样先制作积分格点(music中的map)。 A、离线安装(centos为例): (1)、安装之前要检查一下是否装了automake,

youyno的博客 1万+

面试题46. 把数字翻译成字符串

题目描述 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分

YKbaba 311

VMware ubuntu虚拟机(或Centos7)与主机共享文件夹

系统环境 Windows 10 Vmware Workstation 15 Pro Ubuntu 20.04.1 LTS centos7 1.Ubuntu配置共享文件 1.1安装VMware-tools 更新最新VMware-tools组件 编辑->首选项->更新->立即下载所有组件 安装VMware-tools 虚拟机->安装VMware-tools 安装后ubuntu会加载一个虚拟光驱,解压文件,在解压的文件目录下执行以下命令进行安装 sudo vmware-instal

weixin_38924500的博客 2160

移远EC20模块USB模式切换的底层逻辑与驱动适配探秘

本文深入探讨了移远EC20模块USB模式切换的底层逻辑与驱动适配机制,详细解析了AT命令控制下的USB0与WWAN0模式差异。通过分析USB协议栈、内核驱动框架及网络子系统的交互,提供了模式切换的完整操作流程和常见问题解决方案,助力开发者优化4G通信模块在嵌入式设备中的稳定连接。

cc789的博客 846

[算法]LeetCode每日一题--面试题46. 把数字翻译成字符串(Java)

DailyChallenge 面试题46. 把数字翻译成字符串 Medium20200609 Description 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi"

shinezzz的博客 311

反激电源反馈环路设计:从TL431+PC817原理到动态补偿实战

本文深入解析了反激电源中由TL431和PC817构成的经典反馈环路设计。从静态工作点计算到动态补偿实战,详细阐述了如何通过Type II补偿网络优化环路稳定性与动态响应,并分享了应对光耦CTR离散性、布局噪声等常见调试难题的实用技巧,帮助工程师设计出高性能、高可靠的开关电源。

moon9的博客 706

每日题解:LeetCode 面试题46. 把数字翻译成字符串

题目地址 个人博客地址 题目描述 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi" 提示: 0 <= num < 231 解法 JAVA Strin

liuhao192的博客 218

sm2国密加密算法js实现(真实可用)

sm2国密加密算法js实现加密后内容引入文件js实现sm2加密 加密后内容 可自行验证是否是你需要的sm2加密算法 私钥:BF1F907B4E0487F798DC80AFD7BC2A6201E8514233002272EA3BE2FC6F797843 公钥:前缀04+x坐标+y坐标 042DBA45E7B03394F603CADAFCDDEC854D3E01A4E9C52CD799B85B1A14BDB970137AE58BA553D79F058604DC1CD4B77DE5408BA3308E767584

gusijin的博客 1万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

《剑指offer》面试题46:把数字翻译成字符串

题目:给定一个数字,按照如下规则翻译成字符串:0翻译成“a”,1翻译成“b”…25翻译成“z”。一个数字有多种翻译可能,例如12258一共有5种,分别是bccfi,bwfi,bczi,mcfi,mzi。实现一个函数,用来计算一个数字有多少种不同的翻译方法。 思路: 下面我们从自上而下和自下而上两种角度分析这道题目,以12258为例: 自上而下,从最大的问题开始,递归 : ...

qq_43502142的博客 427

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【LeetCode】剑指 Offer 46. 把数字翻译成字符串 p231 -- Java Version

剑指 Offer 46. 把数字翻译成字符串。给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。

汤姆lazy的优快云博客 585

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

LeetCode 面试题46. 把数字翻译成字符串

给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 示例 1: 输入: 12258 输出: 5 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi...

荔枝的FM 350

【LeetCode】面试题46. 把数字翻译成字符串(JAVA)

原题地址:https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/ 题目描述: 解题方案: 参考:题解 大佬写的代码真的很简洁 代码: class Solution { public int translateNum(int num) { if(num <= 9) return...

rabbitsockx的博客 439

LeetCode面试题:100道(下)

面试题 03. 数组中重复的数字 题目描述 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0 ~ n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入: [2, 3, 1, 0, 2, 5, 3] 输出:2 或 3 限制: 2 <= n <= 100000 解法 0 ~ n-1 范围内的数,分别还原到对应的位置上,如:数字 2 交换到下标为 2 的位置。 若交换过程中

qq_43265673的博客 634

Java算法:LeetCode剑指offer(第二版)算法Java版1-68题

《剑指 Offer(第 2 版)》系列 本书精选谷歌、微软等知名 IT 企业的典型面试题,系统地总结了如何在面试时写出高质量代码,如何优化代码效率,以及分析、解决难题的常用方法。 English Version 题解 以下所有题目均来源 LeetCode 中国官网,题解由 doocs/leetcode 贡献者 提供,正在完善中,欢迎贡献你的题解! 快速搜索题号、题解、标签等,请善用 Control+F(或者 Command+F)。 题号 题解 标签 难度 03 数组中重复的数字 数组,哈希表

qq_43265673的博客 1062

剑指 Offer(第 2 版)力扣 (LeetCode) Java刷题记录

剑指 Offer(第 2 版)力扣 (LeetCode) Java刷题记录。

要努力成为一名优秀的软件工程师! 834

LeetCode—<动态规划专项>剑指 Offer 42、46、47、48

题目描述: 考察重点:第42题要计算最大子数组和,考虑第i位,如果前序和为负,则一定有nums[i] > nums[i] + sum;所以我们用sum记录当前数组和,如果sum

koooooooo5的博客 226

算法刷题专栏介绍

剑指offer,力扣热题,牛客top100

weixin_41171614的博客 1058

如何系统掌握剑指Offer:从算法思维到面试实战的完整指南

对于正在准备技术面试的中级开发者来说,算法刷题常常面临三大困境:题目海量无从下手、知识点零散难以系统化、面试场景下思维难以快速转换。LeetCode-Book项目正是为解决这些痛点而生,它通过系统化的算法训练体系,帮助开发者高效掌握《剑指Offer》核心考点,从算法思维培养到面试实战应对提供完整解决方案。 ## 项目价值与核心优势 LeetCode-Book项目整合了《剑指Offer》、《图解

gitblog_01099的博客 360

用友Java秋招笔试真题解析:集合、SQL与算法全攻略

Java后端笔试中,集合框架与SQL编写是考察硬实力的核心环节。以HashMap为例,其底层数组+链表+红黑树结构、扩容机制以及ConcurrentHashMap在JDK 8中的CAS+synchronized演进,决定了多线程环境下的数据安全与性能平衡。事务隔离级别则直接影响ERP等业务系统的数据一致性,脏读、不可重复读、幻读的解决边界是数据库工程师必须掌握的基础。从索引失效的常见场景到窗口函数优化分组TopN查询,再到动态规划与链表等算法题的解题套路,这些知识点共同构成了Java开发岗位笔试的高频考点。

weixin_33857230的博客 321
上一篇: java快排的一个新手的解法,欢迎赐教
下一篇: 力扣每日一题 寻找峰值 单百
she of study
博客等级 码龄6年 2粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值