为什么我常常对做题产生恐惧,因为可能为了一个不算难的问题不知不觉绕进去2个小时,这显然是不值得的。这题就是如此。

还要注意,java && 的优先级高于||的优先级,而不是同级。

    public int numDecodings(String s) {         if (s.length() == 0 || s.charAt(0) == '0') return 0 ; //0开头直接无法解码//s[i-1] has r1 decode ways , s[i-2] has r2 decode waysint r1 = 1 ;int r2 = 1 ;for (int i = 1 ; i < s.length() ; i ++){//这里是if, if, else,不是if, else if, elseif (s.charAt(i)== '0'){r1 = 0;}//java && 的优先级高于||的优先级,而不是同级。if (s.charAt(i-1) == '1' || s.charAt(i-1) == '2' &&  s.charAt(i)<='6'){r1 = r1 + r2 ;r2 = r1 - r2 ;}//新加入的一位>6else {r2 = r1 ;}}return r1 ;}
复制代码

这代码我是抄https://discuss.leetcode.com/topic/2562/dp-solution-java-for-reference 这里的,代码是很短,总体思路我是懂,但是对于corner case的处理,感觉很玄,因为它在看似不知不觉间处理了很多的test case。

也许我该试着理解一下code ganker的代码,虽然很长。 http://blog.csdn.net/linhuanmars/article/details/24570759/

这题就先如此。

转载于:https://juejin.im/post/5a3131475188253edc7fec0e

91 Decode Ways相关推荐

  1. 【DFS + 记忆化递归 + DP】LeetCode 91. Decode Ways

    LeetCode 91. Decode Ways Solution1:我的答案 还是记录一下,最容易想到的是DFS,但是在第223/238个case上就超时了... class Solution { ...

  2. [LeetCode]91.Decode Ways

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

  3. 【LeetCode】91. Decode Ways 解题报告(Python)

    [LeetCode]91. Decode Ways 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fux ...

  4. 91 Decode Ways

    91 Decode Ways dp解法 O(1) space class Solution:# @param {string} s# @return {integer}def numDecodings ...

  5. 【leetcode】91. Decode Ways A-Z的字母表示1-26的数字,反向破解多少种字符串的可能性...

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

  6. # 91 Decode Ways

    Description A message containing letters from A-Z can be encoded into numbers using the following ma ...

  7. LeetCode 91 Decode Ways(编码方式)(*)

    原文 A message containing letters from A-Z is being encoded to numbers the following mapping: 'A' -> ...

  8. Leet Code OJ 91. Decode Ways [Difficulty: Medium]

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

  9. LeetCode 91. Decode Ways

    问题链接 LeetCode 91 题目解析 A~Z对应数字1~26,给出一段数字串,求破译方法数. 解题思路 动态规划.关键在于分类,定义 \(dp[i]\) 为前i个字符的解密方法数,初始化为0. ...

最新文章

  1. P2888 [USACO07NOV]牛栏Cow Hurdles(Floyd算法)
  2. html点击按钮自动获取值,如何获取HTML按钮的文本值
  3. linux怎么装mac系统,Linux/macos系统怎么安装nvm
  4. java三层 开源_java 山寨qq 聊天工具(基于mvc三层架构,附 mvc架构模式pdf说明文档)支持开源...
  5. ad域 禁用账号_IST-AD域信息同步平台来袭
  6. C# 4.0 的 Visual Studio 2010 官方示例
  7. 9.广义霍夫变换——介绍、广义霍夫变换步骤、实例_1
  8. Python机器学习:KNN算法05f超参数
  9. Respond.js让IE6-8支持CSS3 Media Query
  10. h标签在seo中的作用(技术优化)
  11. python引用配置文件_python中配置文件的使用方法
  12. Unity汉化字段重命名Inspector中字段属性时显示错位及其解决办法——Unity常见问题
  13. matlab s变换
  14. Javascript设计模式-18-状态模式
  15. UE4编辑器扩展踩坑血泪史
  16. 马士兵老师Struts2学习笔记
  17. Android Studio下拉菜单
  18. 【每日蓝桥】13、一三年省赛Java组真题“黄金连分数”
  19. 计算机奥林匹克竞赛基础知识,竞赛考什么?五大学科竞赛基础常识盘点
  20. YOUChain(有链)公链 开源项目介绍——go-bls

热门文章

  1. 次世代游戏建模如何开始?低模到高模角色模型的具体流程
  2. 如何书写Use Case
  3. 有什么微软各种服务器,除了Windows操作系统 微软还有什么?
  4. 未来中国最赚钱的十大行业
  5. 如何使用格式刷格式多段文字
  6. 计算机网络 | 数据链路层
  7. java.lang.unsatisfiedlinkerror:_java.lang.UnsatisfiedLinkError 解决方法
  8. 查询win10电脑预装系统密钥(亲测)
  9. 迈向高手殿堂——红警2坦克战全攻略
  10. 铃木dl250参数_摩旅神车真就名副其实?——中国摩托车联合测评豪爵铃木DL250...