leetcode91(解码方法)
DP还是比dfs效率高多了啊
class Solution:
def numDecodings(self, s: str) -> int:
def numDecodings(s):
#s = s.lstrip("0")
if s == "":
return [0]
if s[0] == '0':
return [0]
dp = [0 for i in range(len(s) + 1)]
for i in range(len(dp)):
if i == 0:
dp[i] = 1
continue
if i == 1:
dp[i] = 1
continue
if s[i - 1] == '0':
if int(s[i - 2:i]) > 26 or int(s[i - 2:i]) <= 0:
return [0]
else:
dp[i] = dp[i - 2]
else:
if int(s[i - 2:i]) > 26 or int(s[i - 2:i]) <= 0 or s[i - 2] == '0':
dp[i] = dp[i - 1]
else:
dp[i] = dp[i - 1] + dp[i - 2]
return dp
k = numDecodings(s)
【leetcode91(解码方法)】return k[-1]
推荐阅读
- 对抗抑郁最好的方法
- 怎样用黑谜速冻膜去黑头,|怎样用黑谜速冻膜去黑头, 最有效的去黑头的方法看这!
- 移动端h5调试方法
- 唱歌教学(导致嗓音损坏的几个常见的错误唱歌方法!)
- 拆书方法训练营
- 数组常用方法一
- 这份史上最经典的3大学习方法,清华北大学霸都在用!
- 迅捷流程图制作软件的使用方法!
- VueX--VUE核心插件
- 15个从现实焦虑中恢复精神的方法!