What do you mean when you refer the depth of the node around 3:59, For me the depth means, The depth of a node in a binary tree refers to the number of edges in the path from the root node of the tree to that specific node. In other words, it represents how far down the node is from the root,, can you please elaborate that dept part.
@@nikoo28 Ok thanks. but then how is the depth of leaf nodes 2, 1, 6, 0, 1 is 1 and then similarly for 7, 5 is 2 I am little lost there. Or may be I am understanding here incorrectly. Pls explain .
I see your confusion...actually, depth of a node relative to tree, and depth of a need relative to a node are different. In this particular problem, our frame of reference is the parent node to leaf nodes. unfortunately, there is not generic definition for depth of a node.
DFS and BFS are literally the same...one uses a stack, other uses a queue. Watch my videos on BFS and DFS...and this concept will be clear for the rest of your life :)
Very informative! Thank you :)
Amazing explaination
NICE SUPER EXCELLENT MOTIVATED
What do you mean when you refer the depth of the node around 3:59, For me the depth means,
The depth of a node in a binary tree refers to the number of edges in the path from the root node of the tree to that specific node. In other words, it represents how far down the node is from the root,,
can you please elaborate that dept part.
Check out this video: th-cam.com/video/o2LEC2NEVuk/w-d-xo.html
@@nikoo28 Ok thanks. but then how is the depth of leaf nodes 2, 1, 6, 0, 1 is 1 and then similarly for 7, 5 is 2
I am little lost there. Or may be I am understanding here incorrectly. Pls explain .
I see your confusion...actually, depth of a node relative to tree, and depth of a need relative to a node are different. In this particular problem, our frame of reference is the parent node to leaf nodes.
unfortunately, there is not generic definition for depth of a node.
Thanks
Sir please continue for tree and graph tutorial also 😊
Sure…but it will be a while. I am trying to lay the foundations first :)
@@nikoo28 thanks 🙏
The complete playlist on graphs is now available: th-cam.com/play/PLFdAYMIVJQHNFJQt2eWA9Sx3R5eF32WPn.html
DFS seems so much more harder than BFS, any idea on how i can improve on it?
DFS and BFS are literally the same...one uses a stack, other uses a queue. Watch my videos on BFS and DFS...and this concept will be clear for the rest of your life :)
Cool thumbnail
You make things so easy, Can you share us Tree and graphs related programs and theories, BFS and DFS ? , thank you,
thanks for the appreciation. Yep, I am working on those algorithms. You can expect to start seeing tree videos in my upcoming 3-4 videos. :)
@@nikoo28 thank you
Will this solution works if the tree has duplicates?
The complete playlist on graphs is now available: th-cam.com/play/PLFdAYMIVJQHNFJQt2eWA9Sx3R5eF32WPn.html
Will this solution work out if the tree has duplicates?
Yes, the iterative method will work
can anyone provide this code in python??
def diameterOfBinaryTree(self, root: Optional[TreeNode]) -> int:
stack = []
maps = {}
diameter = 0
if root:
stack.append(root)
while stack:
node = stack[-1]
if node.left and node.left not in maps:
stack.append(node.left)
elif node.right and node.right not in maps:
stack.append(node.right)
else:
stack.pop()
left = maps.get(node.left, 0)
right = maps.get(node.right, 0)
maps[node] = 1 + max(left, right)
diameter = max(diameter, left + right)
return diameter
I still don't understand how stack works
Watch my video on stack data structure.