Diameter of Binary Tree (LeetCode 543) | Full Solution with Examples | Study Algorithms

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ส.ค. 2024

ความคิดเห็น • 26

  • @pranavbhat92
    @pranavbhat92 5 หลายเดือนก่อน +1

    Very informative! Thank you :)

  • @replymadhug
    @replymadhug หลายเดือนก่อน

    Amazing explaination

  • @ganeshjaggineni4097
    @ganeshjaggineni4097 หลายเดือนก่อน

    NICE SUPER EXCELLENT MOTIVATED

  • @shubhamgupta48
    @shubhamgupta48 5 หลายเดือนก่อน +1

    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
      @nikoo28  5 หลายเดือนก่อน

      Check out this video: th-cam.com/video/o2LEC2NEVuk/w-d-xo.html

    • @shubhamgupta48
      @shubhamgupta48 5 หลายเดือนก่อน

      @@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 .

    • @nikoo28
      @nikoo28  5 หลายเดือนก่อน

      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.

  • @subee128
    @subee128 8 หลายเดือนก่อน +2

    Thanks

  • @ajayrajput256
    @ajayrajput256 3 ปีที่แล้ว +1

    Sir please continue for tree and graph tutorial also 😊

    • @nikoo28
      @nikoo28  3 ปีที่แล้ว +2

      Sure…but it will be a while. I am trying to lay the foundations first :)

    • @ajayrajput256
      @ajayrajput256 3 ปีที่แล้ว

      @@nikoo28 thanks 🙏

    • @nikoo28
      @nikoo28  6 หลายเดือนก่อน

      The complete playlist on graphs is now available: th-cam.com/play/PLFdAYMIVJQHNFJQt2eWA9Sx3R5eF32WPn.html

  • @NiteshKumar-hl6er
    @NiteshKumar-hl6er 5 หลายเดือนก่อน +1

    DFS seems so much more harder than BFS, any idea on how i can improve on it?

    • @nikoo28
      @nikoo28  5 หลายเดือนก่อน

      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 :)

  • @pranaym143
    @pranaym143 4 ปีที่แล้ว +1

    Cool thumbnail

  • @madhumithraravi9087
    @madhumithraravi9087 3 ปีที่แล้ว

    You make things so easy, Can you share us Tree and graphs related programs and theories, BFS and DFS ? , thank you,

    • @nikoo28
      @nikoo28  3 ปีที่แล้ว +1

      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. :)

    • @madhumithraravi9087
      @madhumithraravi9087 3 ปีที่แล้ว

      @@nikoo28 thank you

    • @madhumithraravi9087
      @madhumithraravi9087 3 ปีที่แล้ว

      Will this solution works if the tree has duplicates?

    • @nikoo28
      @nikoo28  6 หลายเดือนก่อน

      The complete playlist on graphs is now available: th-cam.com/play/PLFdAYMIVJQHNFJQt2eWA9Sx3R5eF32WPn.html

  • @madhumithraravi9087
    @madhumithraravi9087 3 ปีที่แล้ว

    Will this solution work out if the tree has duplicates?

    • @nikoo28
      @nikoo28  3 ปีที่แล้ว

      Yes, the iterative method will work

  • @Nainalarenukadevi9196-dh8rz
    @Nainalarenukadevi9196-dh8rz 3 หลายเดือนก่อน

    can anyone provide this code in python??

    • @harshabapatla4130
      @harshabapatla4130 2 หลายเดือนก่อน

      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

  • @pedrohenriqueleite9382
    @pedrohenriqueleite9382 ปีที่แล้ว

    I still don't understand how stack works

    • @nikoo28
      @nikoo28  ปีที่แล้ว

      Watch my video on stack data structure.