I watched all the videos of this playlist from the beginning and I must say you just made this complicated topics so easy to understand. Processed and Unprocessed String pattern is just awesome and has plenty of application's with slight variations. This video and the video before this was a cake walk for me, since I understood all the concepts very well. Thank you for making such an amazing playlist, you're really an amazing teacher. Kudos!
Forget about content or the way of teaching others can't match even in terms of length of any single video of this dsa playlist.. 😁😁😁 There's a reason why the Community is so much excited about this dsa course Btw now it's getting hard to match kunal's speed of uploading videos with my learning & practice speed 😅😅😅
In video also we are learning recursion...like some doubt arises go to the previous videos and again in the previous videos doubt arises go to the another previous video.....at the end if we will reach the base condition which we will have all answers and then we will return to this video with all doubts cleared. 😂😂 BTW great effort and way of explaining the problems is really appreciable...hats of to you sir🙏🙏 ❤❤
whenever you say, " no one can help you, you can't do it", then say "watch the previous videos" even when I have watched all, yet I got scared what bhaiya saying, am I that dumb, maybe I am, what should I do now, it's like a 1-year-old boy in between a fair lost. that's it.
Hey Guys for the Q4 you can also go with the below code :) //With obstacles Q4 static ArrayList printPathRetObstacle(String p , int r , int c){ if( r== 3 && c ==3){ ArrayList list = new ArrayList(); list.add(p); return list; } ArrayList list = new ArrayList(); if( r < 3){ if ( r== 2 && c ==2){ return list; }else { list.addAll(printPathRetObstacle(p + "D", r + 1, c)); } } if( c < 3){ if( r==2 && c ==2){ return list; }else { list.addAll(printPathRetObstacle(p + "R" , r ,c+1)); } } return list; }
I think my code is easier to understand for backtracking: m = current row, n = current column, visited is initialised to all false, curr is the current string of path. void all(int m, int n, bool visited[3][3], string curr){ if(m==2 && n == 2){ cout
Kunal, your DSA videos are an absolute treasure! Your ability to break down complex concepts and provide a clear thought process for solving problems is truly remarkable. Your dedication to making these topics easy to understand is greatly appreciated. Thank you for your fantastic work!
Kunal bro, you don't need to explain the things that you already explained in previous videos. I see you get frustrated while repeating it. Just can say, this is already done checkout xyz video, that's it! If still people are not getting it, they doesn't deserve as your audience. Keep up with your good work, man!!! Looking forward for your videos on DP, trees and graphs.
Never in my life I could have imagined to solve or understand these problems. Thanks Kunal for such an explanation that is so generic and applicable. Watching your JAVA videos I rocked all my java interviews. This playlist is super awesome. I thank you giving my career a boost and direction.
Kunal, discovering your playlist is like finding a hidden gem-unexpected but incredibly rewarding. It's a fantastic collection for both students and professionals learning data structures and algorithms.
Kunal First of all thank you so much. I love the way you teach, you know how to teach what to teach. Amazing kunal, finally i feel i doing right teacher, And big thanks to you, your java videos helped me in cracking 10+LPA job as a fresher, thanks a lot @kunal
Why in Q1 count function have terminate condition ( r==1 || c==1) In Q2 path function have terminate condition ( r==1 && c==1) Both function reports same thing so why conditions are different. I understand path (r==1 && c==1) clearly but can not understand count
Amazing explanation kunal. Was able to understand each and every step. Please make a video on generate all combinations of well-formed parentheses. I was seeing all videos for that question but was not able to understand it
Thanks again for amazing videos, wanted to clarify one thing. The answer for paths when obstacle is there, isn't that wrong? Lets say I have 1 x 4 array and there is obstacle at 0,3 then answer shall be 0 but the code will print 1.
Amazing teaching, Amazing thought process, The way how problems are being break down as per pattern, and they are so easy to understand and solve. Hats off to you kunal. Great work towards helping others with your skills. Thanks 🙂
Man this tutorial was sooooooo good!!!!! Before starting this series I never felt confident in recursion but today I was able to solve problems on my own. I can see that my problem solving skills have really improved. Thank you so much Kunal!! ❤❤
Thank you so much Kunal for these wonderful explanations. Requesting you to please provide the dynamic programming lecture link that you discuss in your lectures.
Really the way this guy clears concept is something I have seen multiple video on rat maze but this man cleared all my doubts by solving same question using different ways. Specially that last question he printed entire matrix path this give me a clear picture of all recursion calls.
//C++ code(Print the Matrix and Paths): void display(vector &vec) { int rows = vec.size(); int cols = vec[0].size(); for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { cout
I dont even know these topics as im not from a cs background but i have faith in this guy, might not land a FANG company but definitely learning something new everyday
Hey bro, just wanted to let you know that I was able to do some problems in the video without actually watching it. Thanks to your previous videos in the playlist.
In the second question if we are going right where (r > 1) so we should do ( p + ' R ' ) in the if condition i guess. In the video the answer is same as we are going only right and down. Only the order of the possible answer is different. Am i right????
can anyone explain me why it give wrong answer if we use pre-increment operator instead of adding 1 in arguments????? for ex: ++r gives wrong answer whereas r+1 doesn't.
Absolutely loved your dsa playlist, i have been watching since start. Also we make dev initiative is super helpful. After completing your dsa course i am going to study web dev from we make dev. But some topics of dsa you have still not covered, please complete the dsa playlist soon. I really appreciate the good work that you are doing, keep it up.
I didn't hear about back tracking before and for me now it is easy but when I have seen the comments I understand that Kunal had made it easy .What a way of explanation EXCELLENT Teaching Skills you have and thanks you for making the Playlist
here is DP solution (with memoization) on top of Kunal's Maze solution. public static Long numberOfPaths(int row, int col, Map map) { if (row == 1 || col == 1) return 1L;
Long left = numberOfPaths(row - 1, col, map); Long right = numberOfPaths(row, col - 1, map); map.put(row+"-"+col, left + right); return left + right; }
Backtracking code with pathprint when up, down, left, right is allowed: import java.util.*; public class Main { public static void main(String[] args) { // ArrayList anslist=new ArrayList(); // anslist=list(0,0,"",2,new int[3][3]); // for(int i=0;i
DSA + interview preparation playlist: ruclips.net/p/PL9gnSGHSqcnr_DxHsP7AW9ftq0AtAyYqJ
Kunal Please complete this playlist
Hi Kunal, desperately waiting for your DP playlist.
Eagerly waiting for the OP-DP playlist Kunal! loved this tons❤
finally a teacher who understand that this topics are important to cover in depth and u have done this job 🔥🔥🔥🔥🔥
I watched all the videos of this playlist from the beginning and I must say you just made this complicated topics so easy to understand.
Processed and Unprocessed String pattern is just awesome and has plenty of application's with slight variations. This video and the video before this was a cake walk for me, since I understood all the concepts very well. Thank you for making such an amazing playlist, you're really an amazing teacher. Kudos!
Glad it was helpful!
@@KunalKushwaha yes just love the playlist by far the best OOP playlist ....just do complete the rest of the playlist...waiting for DPs and Hashmaps.
@@KunalKushwaha hey...pls finish this playlist before starting new ones! These videos are amazing and it must nit be discontinued.
I too feel the same
@@KunalKushwahaHello sir can you help me in a program . I'm struggling. can you send your email I'd...
Forget about content or the way of teaching others can't match even in terms of length of any single video of this dsa playlist.. 😁😁😁
There's a reason why the Community is so much excited about this dsa course
Btw now it's getting hard to match kunal's speed of uploading videos with my learning & practice speed 😅😅😅
Thanks! Do it at your own pace.
@@KunalKushwaha please do dp I'm struggling a bit with it
SIR WHEN COVER REMAINING TOPICS@@KunalKushwaha
Fun Fact : DP was never made in future till this vidoe after 2 years though ..............................
This is the first time i am learning backtracking....and i am glad i bumped into THIS video....very well explained....thanks Kunal...👌🙌
Great to hear!
Fun Fact: After this course DSA is all about copy paste🤣. Nothing is hard😎
In video also we are learning recursion...like some doubt arises go to the previous videos and again in the previous videos doubt arises go to the another previous video.....at the end if we will reach the base condition which we will have all answers and then we will return to this video with all doubts cleared. 😂😂
BTW great effort and way of explaining the problems is really appreciable...hats of to you sir🙏🙏 ❤❤
if you have to fall in love with physics __ Walter Lewin.
if you have to fall in love with coding ___ Kunal Bhaiya.
Thank you for making the recursion concept so easy😊 also, for breaking the myth 21:52, I believed in it for the longest time
Even a cpp student also watching these videos because such awesome content is not available for cpp.
bro WTF why is this playlist put to halt.
This playlist is legit knowldge provider.
it should continue.
placements are near.
Hi Kunal, your course is THE BEST. please release the video of OOP, when can we expect the OOP video?
There is no doubt about Kunal's teaching skills, The way he looks at camera, feels like he is Infront of me and teaching 💚
best explanation available on youtube, literally the concept got imprinted in my mind, Kunal is too OP.
Please sir please Kunal teach us programs on collection concepts such as list,set and map please.
I will in OOP
whenever you say, " no one can help you, you can't do it", then say "watch the previous videos" even when I have watched all, yet I got scared what bhaiya saying, am I that dumb, maybe I am, what should I do now, it's like a 1-year-old boy in between a fair lost.
that's it.
Hey Guys for the Q4 you can also go with the below code :)
//With obstacles Q4
static ArrayList printPathRetObstacle(String p , int r , int c){
if( r== 3 && c ==3){
ArrayList list = new ArrayList();
list.add(p);
return list;
}
ArrayList list = new ArrayList();
if( r < 3){
if ( r== 2 && c ==2){
return list;
}else {
list.addAll(printPathRetObstacle(p + "D", r + 1, c));
}
}
if( c < 3){
if( r==2 && c ==2){
return list;
}else {
list.addAll(printPathRetObstacle(p + "R" , r ,c+1));
}
}
return list;
}
watching long videos of recursion was worth it , can't thank you enough for these .🙏
I think my code is easier to understand for backtracking:
m = current row, n = current column, visited is initialised to all false, curr is the current string of path.
void all(int m, int n, bool visited[3][3], string curr){
if(m==2 && n == 2){
cout
Q gyan pel rha hain...
The way you explain the thought process, just WOW. Anyone can fall in love with recursion after watching this playlist.
ngl recursion has become my favourite after this playlist.
you are a genius kunal .
Just, Amazimggggggggggggggggggggggggggggggggggg
Kunal, your DSA videos are an absolute treasure! Your ability to break down complex concepts and provide a clear thought process for solving problems is truly remarkable. Your dedication to making these topics easy to understand is greatly appreciated. Thank you for your fantastic work!
please start trees and graphs
Love you're channel! I cant believe how much similar the approaches are. I would have never thought mazes and subsequences are soo similar!
Kunal bro, you don't need to explain the things that you already explained in previous videos. I see you get frustrated while repeating it. Just can say, this is already done checkout xyz video, that's it! If still people are not getting it, they doesn't deserve as your audience. Keep up with your good work, man!!! Looking forward for your videos on DP, trees and graphs.
Yeah I do that only
Never in my life I could have imagined to solve or understand these problems. Thanks Kunal for such an explanation that is so generic and applicable. Watching your JAVA videos I rocked all my java interviews. This playlist is super awesome. I thank you giving my career a boost and direction.
bhai hamne 1:11:24 m condition false kyu add kri, jes ehi nice ki true condition hit kregi wo fir se false wale ko hit kregi, please explain
@@nikhilchauhan3506
If you haven't figured it out-
Short answer - true wali statement tabhi execute hogi jab control return ho raha hoga.
Kunal, discovering your playlist is like finding a hidden gem-unexpected but incredibly rewarding. It's a fantastic collection for both students and professionals learning data structures and algorithms.
Awesome videos👏👏👏. Please post videos on binary tree, graph and dynamic programming. Thank you!
Kunal First of all thank you so much. I love the way you teach, you know how to teach what to teach. Amazing kunal, finally i feel i doing right teacher,
And big thanks to you, your java videos helped me in cracking 10+LPA job as a fresher, thanks a lot @kunal
Why
in Q1 count function have terminate condition ( r==1 || c==1)
In Q2 path function have terminate condition ( r==1 && c==1)
Both function reports same thing so why conditions are different.
I understand path (r==1 && c==1) clearly but can not understand count
hey kunal do mark this timestamp as well 🤷♂️🤷♂️ 1:18:23 . Your first ever small rap on Arrays, somewhat similar to Bart's rap
Amazing explanation kunal. Was able to understand each and every step. Please make a video on generate all combinations of well-formed parentheses. I was seeing all videos for that question but was not able to understand it
When will further topics be covered please let me know
Eagerly waiting for the video on DP. Please upload it soon. 🙏🙏
legendary as always
literally solved all the questions before his explanation because of his previous recursion videos knowledge . kunal your recursion playlist is 🔥🔥🔥
Hp wawawa 👌
Thanks again for amazing videos, wanted to clarify one thing. The answer for paths when obstacle is there, isn't that wrong? Lets say I have 1 x 4 array and there is obstacle at 0,3 then answer shall be 0 but the code will print 1.
Amazing teaching, Amazing thought process, The way how problems are being break down as per pattern, and they are so easy to understand and solve. Hats off to you kunal. Great work towards helping others with your skills.
Thanks 🙂
Man this tutorial was sooooooo good!!!!! Before starting this series I never felt confident in recursion but today I was able to solve problems on my own. I can see that my problem solving skills have really improved. Thank you so much Kunal!! ❤❤
I am really glad for having learned such a wonderful concept. Thank you for this video.
thank you, bro...🙏
Today I am feeling sad...why I didn't find your videos before🥺
Thank you so much Kunal for these wonderful explanations. Requesting you to please provide the dynamic programming lecture link that you discuss in your lectures.
Really the way this guy clears concept is something I have seen multiple video on rat maze but this man cleared all my doubts by solving same question using different ways. Specially that last question he printed entire matrix path this give me a clear picture of all recursion calls.
//C++ code(Print the Matrix and Paths):
void display(vector &vec)
{
int rows = vec.size();
int cols = vec[0].size();
for (int row = 0; row < rows; row++)
{
for (int col = 0; col < cols; col++)
{
cout
I dont even know these topics as im not from a cs background but i have faith in this guy, might not land a FANG company but definitely learning something new everyday
Thank you much Kunal for making this course . Just wondering when are you planning for Dynamic Programming and Graph series? Thanks once again .
Hey bro, just wanted to let you know that I was able to do some problems in the video without actually watching it. Thanks to your previous videos in the playlist.
Great to hear!
I am enjoying your full course. I have one request for you --> Please complete it with DP.
nice systematic approach. DO you have DP lectures ?
Amazing explanation of backtracking kunal thanks a lot🙏 😊😊.
In the second question if we are going right where (r > 1) so we should do ( p + ' R ' ) in the if condition i guess. In the video the answer is same as we are going only right and down. Only the order of the possible answer is different.
Am i right????
in q1 base conditon || operator was used but in q2 && was used...can anyone explain
can anyone explain me why it give wrong answer if we use pre-increment operator instead of adding 1 in arguments?????
for ex: ++r gives wrong answer whereas r+1 doesn't.
Absolutely incredible. Watched all the videos and able to understand the process and idea behind. Thanks a lot!
When u gonna do video on OOP ?
We can calculate no. of ways by nofmal permutation nothing else req like in 3*3 maze ans will be 4!/{2!*2!}
Now we are readyyyyyyyyy for DP. Eagerly waiting
Absolutely loved your dsa playlist, i have been watching since start. Also we make dev initiative is super helpful. After completing your dsa course i am going to study web dev from we make dev. But some topics of dsa you have still not covered, please complete the dsa playlist soon. I really appreciate the good work that you are doing, keep it up.
Thank you soooo much, your explainations are incredible. Thank you, brother !!!!
What an explanation 🔥🔥 starting with this topic again and watched this ..great start indeed💥
Sum of subsets equal to target is the best example for backtracking
At the timestamp 1:16:00, what Kunal meant is, LAVAL SABKE NIKLENGE🤣
please upload all the remaining topics of this DSA playlist as soon as possible
Recursion videos are great , but stop talking to yourself and saying the same thing again and again , its quite a bit annoying. :)
keep up the good work
Can anyone give the code for backtracking for returning as arraylist
if there's a river ,buy a boat.dont solve on pen and paper....jusrt 4 fun.
Your codes are masterpiece , the more one understand them , the more they like it.
Still , wisest are they who know that they don't know.
16 mins in and I had to stop because I need to check out those recursion vids
good job
Why Kunal Made this Course ?
Already Explained 😂
is it only me that feels like kunal gives gambhir vibes
I didn't hear about back tracking before and for me now it is easy but when I have seen the comments I understand that Kunal had made it easy .What a way of explanation EXCELLENT Teaching Skills you have and thanks you for making the Playlist
Thanks for sharing
Thanks for the video :) btw your rap is cool 😅
Great video, I have watched all till here ......but there is wrong tree at 40:48
Why he looks alike that nerdy hero from the movie "FALTU"?
Dil se khushi hota hai yr aisa video dekh ke and most important topic smjh ke 🔥🔥🔥🔥🔥🔥🔥
Good lecture if you want to learn copy pasting plus recursion.🤣
Hey kunal do you have a bird? I can hear sound like that in your video.
You not only explained the concept of backtracking but also explained why do we actually need it. Splendid explanation as always. Thank You!
Amazing, such a smooth way to build up to the last complicated solution.
If Kunal will react on this then I will crack Google 😂
i cant express my thanks to this guy.. what a video.. 💥🔥
Best Backtracking I have ever seen and understood
I really enjoyed this lecture like binary search
In middle faltu ki baatoin thodi km ho Jaye toh sahi rehega , bhot bakwass
can anyone plz help..why did he take boolean matrix
sir i dont know why you stop making vedios
Hi kunal, have you posted something on trees ?
At 16:03 "No one can help you" is so true...
after 30:00 it feels like i was in loop doing same thing anagin and again
The answer for Question 4 doesn't seem right. There are 2 ways other than DDRR and RRDD: Down, Diagonal, Right and Right, Diagonal, Down
he didn't used diagonal path and he clearly mentioned it is easy to change
BEAUTIFUL EXPLANATION MAN..........HATS OFF....🔥🔥🔥
Kunal is wow a intellectual human being ..
When will the course continue pls tell me
here is DP solution (with memoization) on top of Kunal's Maze solution.
public static Long numberOfPaths(int row, int col, Map map) {
if (row == 1 || col == 1)
return 1L;
if(map.containsKey(row+"-"+col))
return map.get(row+"-"+col);
Long left = numberOfPaths(row - 1, col, map);
Long right = numberOfPaths(row, col - 1, map);
map.put(row+"-"+col, left + right);
return left + right;
}
1:14:16 par mujhe to sudoku khelna hi nahi aata, moye moye
Backtracking code with pathprint when up, down, left, right is allowed:
import java.util.*;
public class Main
{
public static void main(String[] args) {
// ArrayList anslist=new ArrayList();
// anslist=list(0,0,"",2,new int[3][3]);
// for(int i=0;i