Iterative & Recursive - Binary Tree Inorder Traversal - Leetcode 94 - Python

  Рет қаралды 97,565

NeetCode

NeetCode

Күн бұрын

Пікірлер: 73
@jabir5768
@jabir5768 2 жыл бұрын
Thank you father
@muneebmohd
@muneebmohd Жыл бұрын
You have literally every single question explained, jesus. Thank you man I love you!
@thevinarokiarajl2149
@thevinarokiarajl2149 11 ай бұрын
I am as noobish as they come and I first check for any neetcode vids for a problem I encounter in LC. Ur goated fr
@trbhlk
@trbhlk 4 ай бұрын
You should add the call stack explanation to your recursion section from the DS & Algos course. This was insanely helpful to understand recursion.
@ganeshbirajdar4382
@ganeshbirajdar4382 2 жыл бұрын
Thanks, very helpful 👍
@tsunningwah3471
@tsunningwah3471 5 ай бұрын
b
@MaheshKumar-qq7ts
@MaheshKumar-qq7ts 2 жыл бұрын
I was searching for this explanation few hours back and here it is. You are doing a great job and I mean literally "great job".
@MaheshKumar-qq7ts
@MaheshKumar-qq7ts 2 жыл бұрын
Also I was worried that since you got job now video would not be that frequent, Please prove us wrong.
@ancai5498
@ancai5498 9 ай бұрын
I think the core idea to grasp the iterative solution is to understand the recursive solution first, Basically, when you do the dfs(node->left), it just keeps finding its leftmost node until it doesn't, then you'll have to pop the stack to 'visit' the node(in-order), then dfs(node->right), it's the time for its right node. Hope it helps.
@mr.mrs.gutierrez4975
@mr.mrs.gutierrez4975 Жыл бұрын
Why I need to define private function “inorder”? Why I cannot directly recur self.inordertraversal(root.left) and self.inorderyraversal(root.right)?
@gauravsharma3829
@gauravsharma3829 2 жыл бұрын
Thanks for explaining so well! It was so clear that I understood in one go.
@Marcox385
@Marcox385 2 жыл бұрын
Totally off-topic but how you got so good at drawing instructions? Lately I've been giving tutoring and I took inspiration from you (yet again) and used paint 3d for online sessions, the thing is that I always take too long to write/draw stuff that doesn't even looks that good. So, is it just practice or you have a distinct device other than a mouse?
@olalekansogunle
@olalekansogunle 2 жыл бұрын
@NeetCode I have this exact question. Please help if you are able to get to answering
@rikpatel
@rikpatel 2 жыл бұрын
He has responded to this before in another video. He uses Paint 3D and mouse. I guess its just practice. You can alternatively use Drawing pad
@halahmilksheikh
@halahmilksheikh 2 жыл бұрын
@@rikpatel He uses a mouse??? That's crazy. He writes like he uses a stylus.
@St0n3dCold
@St0n3dCold 2 жыл бұрын
just use a stylus
@Marcox385
@Marcox385 2 жыл бұрын
@@St0n3dCold lmao yeah why I didn't thought that? Let me also convert my display into a touchscreen. Better yet, let me get an expensive graphic tablet for something that isn't my profession, that way I could use an stylus, or several, to enhance the tutoring experience
@codemarshal655
@codemarshal655 Жыл бұрын
Did you know, you can do iterative in / pre / post order traversals using same code?? Checkout how I did it in just 20 lines, in my new video kzbin.info/www/bejne/bKjbf5ZunKidbqc
@bufdud4
@bufdud4 Жыл бұрын
This iterative solution is pretty unintuitive.
@СтасюкАндрій
@СтасюкАндрій Жыл бұрын
yea i solved this problem iteratively with a hint of stack usage and it took me almost 5 hours.... my self-esteem is low now lol
@antoinenijhuis450
@antoinenijhuis450 8 ай бұрын
Where are you at in your programming/comp science journey tho? @@СтасюкАндрій
@cewenchi
@cewenchi 4 ай бұрын
Only moment that i realized the importance of the tree structure with a stack is preparing jobs interview ...
@firstacc5442
@firstacc5442 Жыл бұрын
can you please explain Morris Traversal algorithm, please.
@ziiiiiiiiiii7325
@ziiiiiiiiiii7325 Жыл бұрын
can somebody help me out here: def inorderTraversal(self, root: Optional[TreeNode]) -> List[int]: result = [] stack = [] cur = root while cur or stack: while cur: stack.append(cur)
@NaveenKumar-xq6ce
@NaveenKumar-xq6ce Жыл бұрын
Because a node is a object of class TreeNode. Makes sense to store in stack cause it stores other things like functions and stuff. But we need to store values in array
@pruthvinarayana9568
@pruthvinarayana9568 6 күн бұрын
I love the way he explains Easy problems indetailed keping in mind of beginners 💖
@Chestuhr
@Chestuhr Ай бұрын
Recursive took like 2 minutes but for some odd reason the iterative solution was trickier than medium graph problems
@Cubeone11
@Cubeone11 19 күн бұрын
I understood what is happening but its very hard for me to understand why thats happening
@HiHi-xl9kn
@HiHi-xl9kn 2 жыл бұрын
Glad to see i'm not the only one that always mistakenly append the node to res lol. Could you share what you use to write/draw? ipad? tablet? touch screen?
@andreytamelo1183
@andreytamelo1183 2 жыл бұрын
Thanks!
@AparnaBushan
@AparnaBushan Жыл бұрын
I guess instead of inner while Ioop, we could simply use if condition , am I right ? def inorder(root): curr, stack = root, [] res = [] while curr or stack: if curr: stack.append(curr) curr = curr.left else: curr = stack.pop() res.append(curr) curr = curr.right return res
@arjunhamdalah4139
@arjunhamdalah4139 2 жыл бұрын
Do you have basic cs leetcode Playlist? Thanks
@amitp277
@amitp277 2 жыл бұрын
great explanation thanks!
@LilJollyJoker
@LilJollyJoker 5 ай бұрын
Thank You!
@trbhlk
@trbhlk 4 ай бұрын
You should add the call stack explanation to the recursion section in your DS & Algos course. This was insanely helpful to understand recursion and draw a connection to stacks. Thank you.
@lucy2003-d8p
@lucy2003-d8p Жыл бұрын
heyyy brooo thanks alot❤
@andreypopov6166
@andreypopov6166 6 ай бұрын
easy :) easy to remember...
@tsunningwah3471
@tsunningwah3471 5 ай бұрын
zhina
@richardmunyao4607
@richardmunyao4607 2 жыл бұрын
Thanks so much! This helped a bunch!
@tsunningwah3471
@tsunningwah3471 5 ай бұрын
zhin
@leetcode650
@leetcode650 10 ай бұрын
why are we appending the node to stack instead of just appending the values.
@bossmusa9075
@bossmusa9075 Жыл бұрын
thank you after your explanation i can do it on my own, the description was afwul
@lingyuhu4623
@lingyuhu4623 2 жыл бұрын
Hope to have your video of 145. Binary Tree Postorder Traversal
@kaikim8402
@kaikim8402 Жыл бұрын
Is it Okay if u are solving this problem for the first time and ended up looking at the solution like this? I feel guilty seeing the solution that i will be looking for solution every time i encounter problems that i can't solve. Any advice?
@erinwolf1563
@erinwolf1563 Жыл бұрын
I'm currently in the same shoes as u right now.. but based on my research I think it's okay.. don't feel guilty
@antoinenijhuis450
@antoinenijhuis450 8 ай бұрын
Where are you at in your programming/comp science journey? @@erinwolf1563 @kaikim8402
@tanyashankar9966
@tanyashankar9966 Жыл бұрын
May I know why only stack is considered hare ??
@yogeshmishra1726
@yogeshmishra1726 Жыл бұрын
Do we need to know about iterative method if we know recursive one
@anonymoussloth6687
@anonymoussloth6687 2 жыл бұрын
Please do shortest path visiting all nodes on leetcode. It's a hard problem.
@servantofthelord8147
@servantofthelord8147 3 ай бұрын
The iterative code is hard for me to wrap my head around, but I'll keep revisiting it. For anyone in the same boat, I found this code on GeeksforGeeks and it helped me to understand it even more: cur = root stack = [] res = [] while True: if cur: stack.append(cur) cur = cur.left elif stack: cur = stack.pop() res.append(cur.val) cur = cur.right else: return res
@Baraa_Sy_99
@Baraa_Sy_99 3 ай бұрын
Thanks man, that was really helpful 🌷
@servantofthelord8147
@servantofthelord8147 3 ай бұрын
@@Baraa_Sy_99 Glad it helped you!
@vdyb745
@vdyb745 2 жыл бұрын
I can't thank you enough for your videos !!!
@Goodday-nm7zp
@Goodday-nm7zp 11 ай бұрын
this channel has helped me so much, thank you!
@quirkyquester
@quirkyquester 4 ай бұрын
best video brother! love this!
@trenaesthetics2139
@trenaesthetics2139 10 ай бұрын
Bro I love u thanks man
@gunahawk6893
@gunahawk6893 2 жыл бұрын
dude best explanation
@alexgolomb363
@alexgolomb363 8 ай бұрын
Thank you.
@RelaxationVideos99
@RelaxationVideos99 Жыл бұрын
Awesome Thanks!
@nitrozeus5458
@nitrozeus5458 Жыл бұрын
Yer a wizard, Harry
@nhbknhb
@nhbknhb 2 жыл бұрын
Any vlogs coming?
@akira_asahi
@akira_asahi 2 жыл бұрын
Thank you for the video. I am grateful for your time and contribution. Kind regards, Akira.
@dreamphoenix
@dreamphoenix Жыл бұрын
This is fantastic, thank you.
@numberonep5404
@numberonep5404 2 жыл бұрын
I don't think the link you put in the description is the right one :p nice video btw
@vdyb745
@vdyb745 2 жыл бұрын
True leads to 108 instead of 94
@NeetCode
@NeetCode 2 жыл бұрын
fixed!
@masternobody1896
@masternobody1896 2 жыл бұрын
Nice
@pawelkorsunskiy9660
@pawelkorsunskiy9660 2 жыл бұрын
You are a great teacher!
когда не обедаешь в школе // EVA mash
00:57
EVA mash
Рет қаралды 3,5 МЛН
Minecraft Creeper Family is back! #minecraft #funny #memes
00:26
Players vs Corner Flags 🤯
00:28
LE FOOT EN VIDÉO
Рет қаралды 71 МЛН
My 10 “Clean” Code Principles (Start These Now)
15:12
Conner Ardman
Рет қаралды 230 М.
3 Types of Algorithms Every Programmer Needs to Know
13:12
ForrestKnight
Рет қаралды 474 М.
LeetCode was HARD until I Learned these 15 Patterns
13:00
Ashish Pratap Singh
Рет қаралды 371 М.
How to NOT Fail a Technical Interview
8:26
Fireship
Рет қаралды 1,4 МЛН
How I would learn Leetcode if I could start over
18:03
NeetCodeIO
Рет қаралды 549 М.
Understanding B-Trees: The Data Structure Behind Modern Databases
12:39
8 patterns to solve 80% Leetcode problems
7:30
Sahil & Sarra
Рет қаралды 374 М.
когда не обедаешь в школе // EVA mash
00:57
EVA mash
Рет қаралды 3,5 МЛН