当前位置: 首页 > 后端技术 > Java

JZ-071-Translatenumbersintostrings

时间:2023-04-02 00:46:59 Java

Translatenumbersintostrings题目描述给定一个数字,按照以下规则将其翻译成字符串:1被翻译成“a”,2被翻译成“b”...26翻译成“z”。一个数字有很多可能的翻译。例如12258有5种译法,分别是abbeh、lbeh、aveh、abyh、lyh。实现一个函数来计算一个数字有多少种不同的翻译。题目链接:[Translatenumbersintostrings]()code/***Title:Translatenumbersintostrings*题目描述*给定一个数字,按照以下规则将其翻译成字符串:1被翻译成“a”,2翻译成“b”...26翻译成“z”。一个数字有很多可能的翻译,例如,12258有5个翻译,*是abbeh、lbeh、aveh、abyh、lyh。实现一个函数来计算一个数字有多少种不同的翻译。*/publicclassJz71{/***动态规划**@params*@return*/publicintnumDecodings(Strings){if(s==null||s.length()==0){return0;}intn=s.length();int[]dp=newint[n+1];dp[0]=1;dp[1]=s.charAt(0)=='0'?0:1;对于(inti=2;i<=n;i++){intone=Integer.valueOf(s.substring(i-1,i));如果(一!=0){dp[i]+=dp[i-1];}if(s.charAt(i-2)=='0'){继续;}inttwo=Integer.valueOf(s.substring(i-2,i));如果(二<=26){dp[i]+=dp[i-2];}}返回dp[n];}publicstaticvoidmain(String[]args){Jz71jz71=newJz71();系统输出。println(jz71.numDecodings("12258"));}}【每日留言】你不学习,不适合你;