Advanced Data Structures & Algorithms in Java: Solving Binary Tree Problems

Java SE 13    |    Intermediate
  • 18 Videos | 1h 32m 57s
  • Includes Assessment
  • Earns a Badge
Likes 6 Likes 6
Binary trees are commonly used data structures in programming interviews. It's essential you know how to solve binary tree problems such as counting the number of nodes in a tree, finding the maximum depth of a tree, and mirroring a binary tree using robust, recursive solutions. In this course, you'll solve some common interview-style problems using binary trees, such as how to use a recursive algorithm to count the number of nodes in a binary tree, calculate the maximum depth of a tree, sum up the values of nodes along a path, and mirror a binary tree. Finally, you'll explore different kinds of binary trees, namely the full binary tree, the complete binary tree, the perfect binary tree, and the balanced binary tree.

WHAT YOU WILL LEARN

  • discover the key concepts covered in this course
    recognize how the recursive algorithm to count nodes works
    write code to implement the count nodes algorithm
    recognize how the maximum depth of a binary tree is calculated
    calculate the maximum depth of a binary tree
    explain how the sum of nodes along a path can be computed
    compute and check to see whether a path with a certain sum exists
    describe the original binary tree and its mirror
    implement the mirroring of a binary tree
  • recognize a full binary tree
    write code to check whether a binary tree is full
    recognize a perfect binary tree
    write code to check whether a binary tree is perfect
    recognize a complete binary tree
    write code to check whether a binary tree is complete
    recognize a balanced binary tree
    write code to check whether a binary tree is balanced
    summarize the key concepts covered in this course

IN THIS COURSE

  • Playable
    1. 
    Course Overview
    1m 57s
    UP NEXT
  • Playable
    2. 
    Count Nodes in a Binary Tree
    5m 33s
  • Locked
    3. 
    Implementing Count Nodes
    3m 32s
  • Locked
    4. 
    Maximum Depth of a Binary Tree
    2m 56s
  • Locked
    5. 
    Calculating the Maximum Depth
    5m 31s
  • Locked
    6. 
    Summing The Nodes Along a Path in a Binary Tree
    8m 21s
  • Locked
    7. 
    Checking for Path Sum
    5m 8s
  • Locked
    8. 
    Mirroring a Binary Tree
    1m 59s
  • Locked
    9. 
    Implementing Mirroring
    4m 57s
  • Locked
    10. 
    Full Binary Tree
    4m 31s
  • Locked
    11. 
    Checking Whether a Binary Tree Is Full
    6m
  • Locked
    12. 
    Perfect Binary Tree
    2m 41s
  • Locked
    13. 
    Checking Whether a Binary Tree Is Perfect
    6m 46s
  • Locked
    14. 
    Complete Binary Tree
    6m 42s
  • Locked
    15. 
    Checking Whether a Binary Tree Is Complete
    5m 41s
  • Locked
    16. 
    Balanced Binary Tree
    6m
  • Locked
    17. 
    Checking Whether a Binary Tree Is Balanced
    5m 1s
  • Locked
    18. 
    Course Summary