Decode Ways LeetCode solution in Java
1class Solution {2public int numDecodings(String s) {3int[] dp = new int[s.length() + 1];4dp[0] = 1;5dp[1] = s.charAt(0) == '0' ? 0 : 1;67for (int i = 2; i <= s.length(); i++) {8int oneDigit = Integer.valueOf(s.substring(i - 1, i));9int twoDigit = Integer.valueOf(s.substring(i - 2, i));1011if (oneDigit >= 1) {12dp[i] += dp[i - 1];13}14if (twoDigit >= 10 && twoDigit <= 26) {15dp[i] += dp[i - 2];16}17}18return dp[s.length()];19}20}