leetcode91解码
解码,dp,注意特殊情况

def numDecodings( s: str) -> int:
if len(s) < 1:
return 1
if s[0] =='0':
return 0
if len(s) == 1:
return 1
dp = [0 for i in range(len(s)+1)]
dp[0] = 1
dp[1] = 1
for i in range(2, len(s)+1):
if s[i-1] =='0':
if int(s[i-2:i])<=26 and s[i-2]!='0':
dp[i] = dp[i-2]
else:
dp[i]=0
else:
if int(s[i-2: i]) <=26 and s[i-2]!='0':
dp[i] = dp[i-2] + dp[i-1]
else:
if s[i-1] == '0':
dp[0] = 0
else:
dp[i] = dp[i-1]
return dp[len(s)] print(numDecodings('12'))
leetcode91解码的更多相关文章
- [Swift]LeetCode91. 解码方法 | Decode Ways
A message containing letters from A-Z is being encoded to numbers using the following mapping: 'A' - ...
- 【leetcode-91 动态规划】 解码方法
一条包含字母 A-Z 的消息通过以下方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个只包含数字的非空字符串,请计算解码方法的总数. 示例 1 ...
- Leetcode91.Decode Ways解码方法
一条包含字母 A-Z 的消息通过以下方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个只包含数字的非空字符串,请计算解码方法的总数. 示例 1 ...
- 【算法题12 解码方法decode way】
1.来源LeetCode91 一条包含字母 A-Z 的消息通过以下方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个只包含数字的非空字符串,请 ...
- linux字符串url编码与解码
编码的两种方式 echo '手机' | tr -d '\n' | xxd -plain | sed 's/\(..\)/%\1/g' echo '手机' |tr -d '\n' |od -An -tx ...
- URI编码解码和base64
概述 对于uri的编解码,在js中有3对函数,分别是escape/unescape,encodeURI/decodeURI,encodeURIComponent/decodeURIComponent. ...
- FFmpeg学习2:解码数据结构及函数总结
在上一篇文章中,对FFmpeg的视频解码过程做了一个总结.由于才接触FFmpeg,还是挺陌生的,这里就解码过程再做一个总结. 本文的总结分为以下两个部分: 数据读取,主要关注在解码过程中所用到的FFm ...
- Unicode转义(\uXXXX)的编码和解码
在涉及Web前端开发时, 有时会遇到\uXXXX格式表示的字符, 其中XXXX是16进制数字的字符串表示形式, 在js中这个叫Unicode转义字符, 和\n \r同属于转义字符. 在其他语言中也有类 ...
- C# base 64图片编码解码
使用WinForm实现了图片base64编码解码的 效果图: 示例base 64编码字符串: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKD ...
- java编码原理,java编码和解码问题
java的编码方式原理 java的JVM的缺省编码方式由系统的“本地语言环境”设置确定,和操作系统的类型无关 . 在JAVA源文件-->JAVAC-->Class-->Java--& ...
随机推荐
- 数据结构-详解优先队列的二叉堆(最大堆)原理、实现和应用-C和Python
一.堆的基础 1.1 优先队列和堆 优先队列(Priority Queue):特殊的"队列",取出元素顺序是按元素优先权(关键字)大小,而非元素进入队列的先后顺序. 若采用数组或链 ...
- Spring在Filter中记录Web请求Request和返回Response的内容及时长
1 简介 在Spring MVC中,我们有时需要记录一下请求和返回的内容,方便出现问题时排查.比较Header.Request Body等.这些在Controller也可以记录,但在Filter中会更 ...
- 10月27日内容总结——hashlib加密模块和logging、subprocess模块
目录 一.hashlib加密模块 1.何为加密 2.为什么加密 3.如何判断数据是否以加密 4.密文的长短有什么意义 5.加密算法的基本操作 二.加密补充说明 三.subprocess模块 1.sub ...
- bind使用场景之一
- mybatis学习日记
1.什么是框架 框架是软件开发中的一套解决方案,不同的框架解决不同的问题 2.三层架构 表现层:展示数据 业务层:处理业务需求 持久层:与数据库交互 3.持久层解决技术 JDBC技术(JDBC是一种规 ...
- 逻辑运算符、成员运算符、身份运算符、流程控制、if判断、while循环
目录 一.逻辑运算符 二.成员运算符 三.身份运算符 四.流程控制 五.分支结构 (1).单if判断 (2).双分支结构 (3).多分支结构 (4).if的嵌套使用 六.循环结构while (1).w ...
- css background背景透明
background: transparent; background: rgba(0, 0, 0, 0.8);
- vue---:click、:class可以这样表示
1.:class (1)是否选用class :class="{'active':item.id == id}" (2)根据条件,当前数据dealerId中是否包含当前id,有用cl ...
- LeetCode-382 链表随机结点
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/linked-list-random-node 题目描述 给你一个单链表,随机选择链表的一个节点, ...
- typescript - 学习档案
由于内容繁多,使用掘金来记录此笔记,方便索引跟随!未完待续~~~ 地址如下: https://juejin.cn/post/6899350420541014030/#heading-20