[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;
	}
}

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Ubuntu之cudnn安装

    Ubuntu之cudnn安装一、cudnn简介二、安装步骤

    2022年5月16日
  • POJ – 2965 – The Pilots Brothers&#39; refrigerator (高效贪心!!)[通俗易懂]

    POJ – 2965 – The Pilots Brothers&#39; refrigerator (高效贪心!!)

    2022年2月4日
  • matlab fopen fread_matlab中prctile函数

    matlab fopen fread_matlab中prctile函数matlab中length函数length(x)在matlab中是什么意思?小编能记住你的一点一滴,你却忘了小编的一丝一毫。iflength(h)>1||h<0||h>2*breturn是什么意思?爱的仓促,就像行走于沙漠,风一场就没有了后路。length(x0)为数列的长度,即它里面有多少个元素。n=length(A):如果A为非空数组,返回行数和列数两者之间数…

    2022年9月13日
  • fstream读写文件read_使用同一个fstream

    fstream读写文件read_使用同一个fstream1.fstream是什么?fstream是C++标准库中面向对象库的一个,用于操作流式文件。fstream本质上是一个class,提供file操作的各种方法。2.关系图basic_fstream是一个类模板,暂且不用深入理解它。我们关心的事,它前面继承的那一堆东西。fstream是basic_fstream<char>的一个模板类,也就说明,fstream也继承了一堆东西。我们再关心一下从ios_base基类,重点继承了什么?文件流的打开模式。3.实验3.1打开/创建文件

    2022年9月19日
  • linux配置ip的方法,linux下配置ip地址四种方法(图文方法)

    linux配置ip的方法,linux下配置ip地址四种方法(图文方法)主要是用第四种方法(1)Ifconfig命令第一种使用ifconfig命令配置网卡的ip地址。此命令通常用来零时的测试用,计算机启动后ip地址的配置将自动失效。具体用法如下。Ipconfigethxipaddnetmaskx.x.x.x。其中ethx中的x代表第几快以太网卡,默认第一块为0.ipadd代表ip地址。x.x.x..x为子网掩码。例如给网卡eth0配置的i…

    2022年5月2日
  • 面部表情识别系统(人脸识别技术介绍)

    利用计算机进行人脸表情的识别成为当前人脸识别研究领域的热点。本文基于先进的深度学习技术,首先应用级联分类器对人脸进行检测和定位,然后使用Xception的小型卷积神经网络实现人脸表情的实时检测。文中不仅就涉及的技术原理展开介绍,还结合Python代码进行了实验说明,并对最终的实验结果予以分析。训练的网络精度高、实时性好,最终成功应用实现了一个可以实时检测的人脸表情识别系统。

    2022年4月17日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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