Do This To Improve Your Programming Logic By 199% in 30 Days 🔥 Problem-Solving Skills Improvement 🔥
Do This To Improve Your Programming Logic By 199% in 30 Days 🔥 Problem-Solving Skills Improvement 🔥
Hey guys, In this video, We’re going to discuss how you can Improve your Programming Logic in 30 days.
🥳 Join our Telegram Community:
Telegram channel: https://telegram.me/realanujbhaiya
Telegram group: https://telegram.me/dsa_one
Follow me on:
Instagram: https://www.instagram.com/Anuj.Kumar…
Linkedin: https://www.linkedin.com/in/sharma-ku…
Twitter: https://twitter.com/realanujbhaiya
Resolution days on GeeksforGeeks: http://bit.ly/anujbhaiyagfg
Register now: http://bit.ly/anujbhaiyaRD
╔═╦╗╔╦╗╔═╦═╦╦╦╦╗╔═╗
║╚╣║║║╚╣╚╣╔╣╔╣║╚╣═╣
╠╗║╚╝║║╠╗║╚╣║║║║║═╣
╚═╩══╩═╩═╩═╩╝╚╩═╩═╝
Complete DSA Playlist:
DSA-One course: • Time Complexity \u0026 Big O notation | An…
Complete Android Development Playlist: • Android Development Tutorial for Begi…
Hashtags:
#anujbhaiya #dsaone
Content
0 -> How to improve problem-solving skills? This is a frequently asked question and I am going to answer HOW
9.965 -> how will your mind think of logic
13.544 -> if you see a question and don't understand how to do it while the other person clicks it
20.603 -> the logic doesn't click in your head so you think nor the question but programming is out of your league
26.124 -> you feel opting for this is a mistake
29.028 -> It happens, also happened to me
31.629 -> but today I'm going to tell you things that'll improve your logic skills
35.941 -> you'll be able to make programming logic but is a continuous process
40.755 -> it's an iterative process, it'll not happen as if I give you a trick and you'll start solving problems
50.965 -> but, I've divided this today in such a way that if you follow it through the end of video
57.102 -> after a month, you'll start seeing changes in yourself
61.886 -> and you'll start doing the questions which once you couldn't do
66.004 -> at least logic will click in your mind
69.386 -> so give it a try for 1month, there's a 1month challenge too in the video that I'll share
74.957 -> you have to follow it as its a continuous process
77.961 -> I myself got to know about these quite late
83.129 -> what all I did right, I'm going to discuss them today
85.978 -> When I went to college and started programming I couldn't solve the questions
91.514 -> when new questions arrived I couldn't do them
93.671 -> So when I saw Logic and didn't understand I saw editorials
96.918 -> and when I saw them I felt as if I could have thought of it myself
101.571 -> that this is such cool logic that I should've thought
104.171 -> I'm going to practice but can't solve them
107.314 -> but Now what right things I did that if new questions come I can bend it
112.386 -> even if it's a hard question, I can understand its logic
116.5 -> How so? What else the other person is doing that he can solve but you can't
121.292 -> well it's not like rocket science
124.761 -> or a very advanced thing, the main thing lies in PRACTICE
128.926 -> that is how you guys should practice
131.271 -> then you'll say that while practicing you can't do questions
134.114 -> but this is the circle that to improve your skills you have to practice
139.328 -> and your skills will be improved through practice
143.006 -> this is it, the more you practice the more improved your skills will be
147.575 -> but you say that you need problem solving skill while practicing
150.21 -> so I tell you 2 things here
152.327 -> if talking about problem-solving and you can't do questions
155.386 -> and where your skills are weak, we'll take those as hard and new questions
162.029 -> here it'll come some hard questions and while practicing you'll do only easy ones
168.886 -> trust me, if you straight away jump to hard ones you can't do them
174.514 -> no one does it in the starting itself
176.886 -> the ones who can do it have already done the easy ones
181.2 -> if once you've done enough easy types you'll start making on harder ones damn sure
186.771 -> I can say all these on the basis of 1thing that THERE ARE NO NEW PROBLEMS
197.8 -> All the problems today are derived, they are derived from the easy ones only
205.021 -> there's some logic that if you did the easy one you can do the hard type
209.425 -> It always happens
210.919 -> ok, so in today's video we'll discuss 2 things that'll improve your skills
216 -> the first thing will be about you'll approach to the problem
219.948 -> and 2nd thing is what things you should keep in mind while practicing
225.401 -> if you did these 2things the way I told you and 3rd thing coming as a challenge
231.057 -> that I'll be telling in the end, if you did these 3things you'll see yourself better
238.657 -> so, 1st learn how to approach the problem
243.355 -> I'm going to tell new things not something that everyone tells
248.381 -> I'll share a lot of new things with you today
250.621 -> before going forward, I would like to thank the sponsor for today's video GEEKS FOR GEEKS
254.057 -> We know geeksforgeeks is the platform for searching questions or practicing
259.941 -> but today we'll talk about RESOLUTION DAYS 2022 offered by geeksforgeeks
264.186 -> its going to be for 7-9th Jan wherein you'll get multiple exciting offers
270.009 -> so go and register for it now. You'll get an extra 15% off on premium courses
276.207 -> other than this many webinars will be very vital
280.368 -> free resources, wheel of fortune by which you can get a 100% off too on premium courses
287.143 -> moreover, you can test your skills in DSA, C++, Java, Python and more
293.74 -> its a great platform and for a limited period from 7-9Jan
298.622 -> So you'll find link in the description, quickly register for it and enjoy the offers
303.9 -> Let's start the video now
305.726 -> So whenever you are to approach a problem you have to take care of some steps
309.197 -> let's discuss these steps first
310.771 -> Break your problem into subproblems that how a big problem can be broken into small ones
315.329 -> 2nd is to get the problem on Brute Force solution
318.005 -> try to find a Brute Force solution rather than jumping to an optimized solution
322.607 -> we have to think of Brute Force and then optimize
325.429 -> there are many ways to optimize
328.235 -> sometimes sorting doesn't matter or basically order so you can use sort
333.757 -> or you can use space like hashmap or dynamic as when you use Arrays and matrixs
340.355 -> these are the things
341.384 -> lets understand how to think of these 3things with help of an example
345.425 -> suppose if a question is 3sum, basically you've to find 3numbers from an array whose sum is X
353.988 -> you're given a big array and have to 3nnumbers whose sum is some X
357.371 -> So how will you apply these?
359.314 -> Sub problem, brute force or optimize
360.88 -> First lets think of the brute force
362.808 -> its not necessary to move in this specific order
365.029 -> I told so lets find brute force, its important to find it
369.108 -> its also a solution its just that it doesn't optimize
372.643 -> but a valid brute force solution is also very helpful
375.318 -> how we'll do this?
377.03 -> Basically we understand Ncube types solution where we'll run a loop
380.743 -> we'll run 3 times nested loop ncube will be its complexity
383.63 -> but we'll get 3numbers whose is sum is equal to X
387.143 -> if you can't think of this too, try yourself and code how
391.745 -> if you put 3 nested loops in Ncube
395.486 -> so I can find the 3sum
397.9 -> we thought of brute force
400.314 -> Now next, we can see 3sum is X so we can break the problem
406.971 -> I'm saying not to try the whole big problem all together trynna find its smaller version
415.24 -> that can a smaller easier version is there or not
418.896 -> if I solve this smaller version the big version also gets solved
421.502 -> so here's its 3sum, we got to find sum of 3no.
425.051 -> what if the question was to find 2sum and the sum was supposed to be K
433.386 -> The main question is the 3sum is X
439.012 -> if I found sum of 2numbers then I'll find the 3rd number i.e X-K
444.6 -> if this X-K exists then we'll find the 3nummber
448.804 -> now you've divided this problem into a sub problem now rather finding 3 you'll trynna find the 2sum
455.671 -> whose sum is equal to some K
458.471 -> now you've seen that my question is now smaller,
462.177 -> 1thing, maybe in this question these techniques are being used but there are chances where they're not used
467.874 -> I'm giving this as an example, but in most of the questions
472.682 -> in someway or the other these techniques get used
475.743 -> I'm giving you a general approach to how to approach a question
479.514 -> this is the same approach by my side even today that I start from the basic
482.987 -> I don't straight away think of optimizing NO
484.835 -> I try to find brute force solution through which I understand how optimization will go
490.053 -> like if I give space in this way, the optimizing is done
492.811 -> Now we've ho find sum of 2numbers whose sum is K
497.8 -> Now what can be done here?
500.071 -> brute force solution again, put 2 nested forloops
506.729 -> and then you can find sum of number whose sum is K
510.286 -> But, can we optimize it further? Lets think of this
514.878 -> can we sort? here I've given 2 ways bit there are many
521.465 -> you'll get these ways when you practice ample amount of questions
524.993 -> Why I'm saying this? as there are no new problems
527.971 -> all problems are derived
530.3 -> we're optimizing, lets sort as order doesn't matter in arrays
537.543 -> Lets sort, do I have an advantage? I have sorted numbers
540.93 -> First it was ill odered but now sorted
543.17 -> Si I can move taking 2pointers and bring it till their sum is equal to some K
550.582 -> if the sum is more than K, then I'll reduce this and if less than K I'll this increase this
556.532 -> and inn this way can solve the question easily
558.458 -> I've already done this question in my DSA course you can see there
562.014 -> This can be one technique, in nlogn as sorting is to be taken nlogn only
567.887 -> other if O of N so Nlogn only
570.043 -> So you found out sum of 2numbers, then you found the 3rd one by iteration
578.214 -> Now you brought solution from Ncube to Nsquare
582.943 -> there can be many optimizations, other than sorting and use space we can get optimization
591.321 -> here you don't sort the array just put them in a set
596.763 -> if you put them in a set, then you just have to iterate in the array
602.073 -> the complementary number of the main number which is K - the no.
607.65 -> we have to see if that is present or not
609.144 -> if its present then it'll come in big of N, not N logn but in N
614.829 -> then you have to find 3rd No. for which you'll run a loop for Big Nsquare and get the answer
618.341 -> So see how I've put these things right
622.852 -> this is basically going back to basics
625.737 -> when I get problems where even different data structures are being used
630.743 -> But I always think to break it into a sub-problem, finding brute force and how to optimize the current solution
638.147 -> by various means and tools at my disposal
641.229 -> how do I get it? As I have practiced many questions
644.466 -> enough data structures practice, I've known enough things now that yes these are the only things
648.82 -> Tool box is completed, there's a mistake that our tool box isn't completed
653.022 -> due to this we don't have knowledge about all the data structures, and algorithms at our end
659.814 -> So now we're going to talk 2nd part of this video
663.107 -> about how you should practice
665.863 -> understood how to approach to a problem
668.271 -> now lets understand how to practice
670.056 -> And what to do after your is solved, let's talk about that
674.27 -> Has it ever happened to you that if you solved a question, you think you might not remember doing it after 10-20 days?
682.357 -> Your confidence goes down
684.143 -> what you're doing is a mistake while practicing which makes you feel as if your skills aren't improving
690.369 -> you can't do the question which you did earlier you can't mold it
693.814 -> or the new question based on the previous one, you still can't do it
698.871 -> because there is some mistake while in practice. Lets talk about it
702.057 -> when you solve a problem, you solved it very well CONGO
707.834 -> but the story isn't over yet
709.423 -> you got the green tick but there are other things to be kept in mind
713.902 -> so that if you're sure that you can do these types of question in future as well
720.057 -> what we have to do is
721.194 -> Go through the solution, go through it once
724.143 -> see your solution one more time and think about how you can improve it
729.8 -> where and in what core you can improve it
732.868 -> if you can improve a small If condition, you should do it
737.483 -> after you're done with the question and solution
741.539 -> Go through editorial
743.429 -> once go and check what the actual solution was
746.046 -> if you've a question on a website go and see how they have done the solution
752.114 -> you'll find new new things there
754.914 -> if tthere's no solution of its own then other people would have added their solution
759.129 -> Go check their solutions how they have done it is there anything new
762.862 -> see how they have done optimizing and you'll find new things
766.768 -> Then after this, make notes
768.836 -> when you did this make notes, I'm not saying to add the whole solution in it
775.901 -> not like this, but you can divide every problem in the world into steps
782.571 -> the steps which you can remember so that from going 1 to another step becomes easy
787.943 -> if you know this question has 4steps and you know those steps you'll complete the solution with these
798.071 -> I'm not saying to read the notes but not to mug it up
802.394 -> You don't have to mug the whole solution but you should know the concept
806.743 -> You should know what was the major step through which you can solve it
812.146 -> ok, there can be multiple things and questions where you can use it
816.946 -> DIVIDE INTO STEPS, it's very important let's start it
821.262 -> for this, I'm making a platform which'll come very soon
829.243 -> After making notes, upload on Github or anywhere like LinkedIn
834.4 -> Why I'm saying this? as you'll get a sense
839.584 -> that you've achieved something today
841.457 -> as there's a main reason that even if you do a question you don't get a sense of achievement
848.086 -> This is very important, it'll boost your confidence
851.485 -> When I was in college and started doing this
854.99 -> that when I solved questions daily and have made my repo in Github
858.618 -> something like Data structures and algorithms
860.656 -> and I'm uploading it everyday whatever I'm doing
864.056 -> From there I learned Git
868.857 -> its important to make DAILY habits like this
872.743 -> that today you have to solve 2questions and upload them on Github
877.887 -> I'm telling you one more thing I talked about earlier with a Hashtag
881.586 -> #DSAONE on LinkedIn
886.872 -> Once you solved a question you have to upload on Github
890.484 -> or if not click its pic and upload on LinkedIn with #DSAONE
895.765 -> see whats going on there, you can show your daily stuff like Day1, Day2 and more
902.208 -> #DSAONE is a great hash and many people follow it
907.314 -> its a community where you can see what others are doing and on what day they are
913.023 -> If you do this for 30days I guarantee you
922.629 -> that you'll be able to solve new questions too
925.49 -> Its time to make drastic changes
928.162 -> there's a need for change in the way to practice
932.321 -> if you're done with this you need something new
936.239 -> there are 2things, or you do a change or stay in the same path
940.422 -> but its not an option now you HAVE to do something new so you can do new questions
948.171 -> here comes the thing about CONSISTENCY which is a very vital part
954.571 -> very important thing
955.387 -> if you break this, things will start falling off your head
959.833 -> Consistency in practice and going through the notes
963.471 -> and you'll notice your problem-solving skills are improving
967.271 -> you can make questions and as you see a question you can guess this very technique is to be used
972.763 -> I've many questions that if I see a ques I can get that its based on this type
980.014 -> We broke it into a sub problem
982.509 -> when you break, think of a brute force, optimization also starts side by side
988 -> Danny programming is nothing but usage of space over brute force
993.183 -> use space over brute force and optimize that's it
996.236 -> So there are many things like that
998.189 -> and you've to be consistent, now one last point
1001.418 -> that you're practicing but doing all the topics is also important
1006.732 -> ook, all the topics
1008.69 -> all topics in Data structures and algorithms
1012.657 -> practice on all of them with easy questions
1015.384 -> when you know you've these data structures and algorithms
1020.493 -> you can use them in doing questions its a GAME CHANGER
1024.557 -> Now if you've got new questions you can use techniques and do them
1028.843 -> So its important to have tools in your tools kit
1032.766 -> it'll happen when you've done practicing all topics
1036.501 -> Its all about practice and how you approach the problem
1040.439 -> and when done with a problem what you'll do next, its vital
1046.214 -> when you start doing these you'll start seeing yourself doing problems
1050.114 -> this was it, this is what I wanted to tell you
1052.749 -> so go and solve problems
1053.899 -> and on #Dsaone or #Dsaone challenge
1057.513 -> we can make a new one too, you can use both. There are many in #Dsaone
1065.141 -> but you can make a new one #DSAONE CHALLENGE
1067.754 -> Use it and I'll see what people are doing
1070.857 -> I hope your problem solving will start improving and can make questions
1074.997 -> If there's still aby doubt tell me about it in comments section
1077.652 -> Like the video, subscribe it. I'll meet you in next video..BYEE
1082.181 ->
Source: https://www.youtube.com/watch?v=mZGlcukGuTo