[LeetCode]Decode Ways「建议收藏」

[LeetCode]Decode Ways

大家好,又见面了,我是全栈君。

A message containing letters from A-Z is being encoded to numbers using the following mapping:

'A' -> 1
'B' -> 2
...
'Z' -> 26

Given an encoded message containing digits, determine the total number of ways to decode it.

For example,
Given encoded message "12", it could be decoded as "AB" (1 2) or "L" (12).

The number of ways decoding "12" is 2.

迭代较简单,递归超时

public class Solution {
	public int numDecodings(String s) {
		int len = s.length();
		if(len == 0) return 0;
		int prev = 1;
		int cur = s.charAt(0)>'0'?1:0;
		if(cur == 0) return 0;
		for(int i=1;i<len;i++){
			int temp = cur;
			int comp = Integer.parseInt(s.substring(i-1,i+1));
			if(s.charAt(i)=='0'){
				char c = s.charAt(i-1);
				if(c=='1'||c=='2'){
				    cur = prev;
					prev = temp;
					continue;
				}else{
					return 0;
				}
			}else if(comp<10||comp>26) {
				prev = temp;
				continue;
			}
			cur += prev;
			prev = temp;
		}
		return cur;
	}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115911.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Pytest+Allure安装

    Pytest+Allure安装文章目录1.Pytest环境安装2.Window环境下Allure安装3.Linux环境下Allure安装1.Pytest环境安装#在线安装pip3installpytestpip3installpytest-rerunfailurespip3installpytest-htmlpip3installpytest-repeatpip3installpytest-assumepip3installallure-pytest#离线安装-先在线下载pip3

  • CAN总线学习笔记(3)- CAN协议错误帧

    CAN总线学习笔记(3)- CAN协议错误帧依照瑞萨公司的《CAN入门书》的组织思路来学习CAN通信的相关知识,并结合网上相关资料以及学习过程中的领悟整理成笔记。好记性不如烂笔头,加油!1错误帧的帧结构在发送和接收报文时,总线上的节点如果检测出了错误,那么该节点就会发送错误帧,通知总线上的节点,自己出错了。错误帧由错误标志和错误界定符两个部分组成。主动错误标志:6个连续的显性位;被动错误标志:6个连续的隐性位;…

  • 网管工具软件_netscan

    网管工具软件_netscan转发:http://baike.baidu.com/view/1358799.htmCacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。Cacti是通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、

  • 水牛城66有看点不_acwing是什么

    水牛城66有看点不_acwing是什么给定一张 L 个点、P 条边的有向图,每个点都有一个权值 f[i],每条边都有一个权值 t[i]。求图中的一个环,使“环上各点的权值之和”除以“环上各边的权值之和”最大。输出这个最大值。注意:数据保证至少存在一个环。输入格式第一行包含两个整数 L 和 P。接下来 L 行每行一个整数,表示 f[i]。再接下来 P 行,每行三个整数 a,b,t[i],表示点 a 和 b 之间存在一条边,边的权值为 t[i]。输出格式输出一个数表示结果,保留两位小数。数据范围2≤L≤1000,2≤P≤50

  • win7显示安装程序正在启动服务器失败,Win7安装程序正在启动服务怎么办?

    win7显示安装程序正在启动服务器失败,Win7安装程序正在启动服务怎么办?许多用户在使用电脑的时候,都会时不时的重装一下电脑系统。但是最近有不少用户反应自己在安装Windows7系统的时候,卡在程序正在启动服务。那么这要怎么办呢?下面小编就带着大家一起看看吧!操作方法:1、使用Windows光盘或者U盘引导,进入系统安装界面。按【Shift+F10】打开命令提示符。2、输入【Diskpart】(不用输入引号,下同),按【回车】,进入操作界面。3、输入【listdi…

  • mysql常用函数参考

    推荐:http://www.cnblogs.com/roucheng/p/ubuntumysql.htmlend

    2021年12月24日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号