Decode WaysJun 25 '126747 / 26583
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.
dp[i] = dp[i-1] + dp[i-2];
class Solution { public: bool isValid(const string& s, int a) { if (s[a] == '0') return false; else return true; } bool isValid(const string& s, int a, int b) { if (s[a] < '1' || s[a] > '2' || (s[a] == '2' && s[b] > '6')) return false; else return true; } int numDecodings(string s) { int n = s.size(); if (n == 0) return 0; if (s[0] == '0') return 0; vector<int> dp(n, 0); dp[0] = 1; if (s[1] != '0') dp[1]++; if (isValid(s,0,1)) dp[1]++; for (int i = 2; i < n; i++) { if (isValid(s, i)) dp[i] += dp[i-1]; if (isValid(s, i-1, i)) dp[i] += dp[i-2]; } return dp[n-1]; } };
相关推荐
本篇题解针对的是LeetCode中一道经典的字符串处理问题——Decode Ways II(解码方法 II)。这个问题在算法领域具有一定的挑战性,因为它涉及到动态规划(Dynamic Programming, DP)的应用,同时也需要对字符串的遍历...
Decode Ways问题是一个典型的动态规划问题,也称为“解码方法”。该问题描述如下:给定一个只包含数字的字符串,需要通过以下规则将数字编码为字母:'1' 对应 'A','2' 对应 'B',依此类推,'26' 对应 'Z'。同时,...
"DEcode Ways"是LeetCode中的第91题,它涉及到字符串处理和动态规划的算法知识。下面将详细讨论这个题目以及如何使用JavaScript来解决它。 解题思路: 问题描述:给定一个只包含大写字母的非空字符串s,已知每个...
本压缩包文件名为“c语言-leetcode题解之0091-decode-ways.zip”,它聚焦于解决LeetCode上的一个特定问题——“0091. Decode Ways”。这个题目的核心是关于字符串解码,要求编写一个C语言函数,能够将输入的一个仅...
在探讨如何解决LeetCode上的“Decode Ways”这一问题时,我们首先需要理解题目的基本要求。这个问题要求我们给出一个从1到26的编码系统,其中每个数字代表一个字母,但26代表'Z'。给定一个数字串,我们的任务是计算...
在探讨JavaScript中解决LeetCode上编号为91的“解码方法数”的问题时,我们首先需要了解该问题的具体内容和相关的算法背景。编号91的问题是:一个仅包含数字的字符串能否被解码为字母组合,这里的解码规则是:'1'...
例如,著名的“解码方法”问题(Decode Ways)就要求计算给定的数字编码有多少种可能的解码方式,这需要对动态规划有深入的理解。 在解决LeetCode的解码问题时,关键在于理解编码的逻辑,然后选择合适的数据结构和...
leetcode 分类 LeetCode Progress 128/154 Other Solutions C++,有详细思路解释 ...Decode Ways Palindrome Partitioning II Maximal Rectangle ###Recursion N-Queens N-Queens II Balanced Binary Tree Binar
leetcode怎么计算空间复杂度是指 LeetCode-Solution my first solution of LeetCode 2015-5-7 Problem 95,98(80 ...我经常在递归的结束地方忘记return!...091:Decode Ways 简单的一维DP,用额外数组O(n)即可。 139,1
leetcode 【演示记录】 报告 展示 2017/03/06 1.二和,167.二和二 2107/03/06 15.3 总和,16.3 总和最近,18.4 总和,11.最多水的容器 2017/03/09 62.Unique Paths, 63.Unique Paths II, 64.Minimum Path Sum 2017/...
扩展矩阵leetcode interview-algorithm leetCode 待解决 上楼梯问题 how many ways to decode this message @leetCode 91
Ways](./leetcode/动态规划-Decode Ways.java) [动态规划-Distinct Subsequences](./leetcode/动态规划-Distinct Subsequences.java) [动态规划-Longest Valid Parentheses](./leetcode/动态规划-Longest Valid ...