Leetcode Decode Ways || Intuition + Code + Explanation
Vložit
- čas přidán 18. 08. 2021
- A message containing letters from A-Z can be encoded into numbers using the following mapping:
'A' - "1"
'B' - "2"
...
'Z' - "26"
To decode an encoded message, all the digits must be grouped then mapped back into letters using the reverse of the mapping above (there may be multiple ways). For example, "11106" can be mapped into:
"AAJF" with the grouping (1 1 10 6)
"KJF" with the grouping (11 10 6)
Note that the grouping (1 11 06) is invalid because "06" cannot be mapped into 'F' since "6" is different from "06".
Given a string s containing only digits, return the number of ways to decode it.
The answer is guaranteed to fit in a 32-bit integer.
Example 1:
Input: s = "12"
Output: 2
Explanation: "12" could be decoded as "AB" (1 2) or "L" (12).
Mam thank you so much your dp lectures are better than many paid courses.
U r explanation is so simple and easy to understand 😊😊
Please don't stop making lectures😊
Nice explanation! Thank you.
Modified your code(Java) for constant space:
class Solution {
public int numDecodings(String s) {
if(s.isEmpty() || s.charAt(0) == '0') return 0;
int twoStepsBack = 1;
int oneStepsBack = 1;
for(int i = 2; i = '0' && currentChar
Very Well Explained Thank you very much
Clear explanation,thank you. Also your videos are very crisp and clear ,please make more vidoes,finding quite helpful.
Clear & Nice explanation!
Thank you very much ma'am!
This was such a clear explanation video. Thank you!
Excellent Explaination !! Thanks !:)
Awesome explanation 😁 Thank you..
Good explanation with different cases
great explanation, thanks
great explanation thanks 😊
very useful... thank you
There was a movavi editor plus banner which flashed in intervals in the video.
Hi @code with Alisha,
it was such a nice explanation, you efforts were visible in video. However there was a cut in video when you just started tabulation part and then suddenly you lowered your voice, was that because you were recording at night ?.
haha 😁, if that was so, that was such a cute moment 🤣.
awesome explanantion
just solved it after getting the intuition
I paused the video at 18:39 to subscribe your channel, thanks for the easy explanation
Hey, Can you make a video, how your coding journey start? Where to start? Which platform to do first?
Nice Explaination ,Thank You mam 🙏
Thank you
ThankYou mam!!!
Great video
getting memory limit exceeded while using recursion + memoization
Ma'am please tell that can I solve this question using BFS or not?
I write a code myself using queue for BFS but that's running only for few cases so please tell..
Amazing explanation didi
Great explanation ma'am, but I think there is a small mistake in it, we can decode "110" in 1 way only (1,10), not 2 ways [21:30]
1,1,0 is not a valid decoding
why you have taken previous two state i.e dp[i] += dp[i-2] . why dp[i-2] ? And why you have take dp[0] = 1;
Bahut mast samjhate ho aap didi😃
You mentioned that you'd tell about why dp[0] = 1. Could you explain that, please?
In simpler terms, when you have an empty string (length 0), there is exactly one way to decode it, and that is by doing nothing. So, dp[0] is set to 1 to represent this one way.
🙌🏻
except striver , no youtuber can write recursive solution by themselves
why are you thinkinng like this man ??? 😂😂
class Solution {
public:
int numDecodings(string s) {
int i,n=s.length();
if(s.length()==0||s[0]=='0')
return 0;
vectordp(n+1,0);
dp[0]=1;
dp[1]=1;
for(i=2;i='1'&&s[i-1]='0'&&s[i-1]
put 6 in place of 9
Great work 👏 check your LinkedIn request 👏