What you will learn
What are binary trees and why are they so important
Linked list and array implementation of a binary tree
Understand essential patterns behind common interview problems
Detailed code implementation and solution of all problems
Intuition through visual explanation of algorithms
Hands on practical experience in a setup free coding environment
Requirements
This is a complete course and assumes that you know nothing about binary trees but are familiar with some basic foundational topics and data structures in any programming language.
- Basic knowledge of programming in any language
- Basic knowledge of functions and classes
- Basic knowledge of memory management
- You have completed courses on linked list, stacks and queues
- You have completed courses on recursion and backtracking
Overview
Data structures are used extensively in software development, and a binary tree is the most fundamental of all data structures. Irrespective of the language, framework, or system that you use, you will always be using a binary tree in some form or the other.
Representation of a binary tree
Fundamentals
This course teaches you the fundamentals of a binary tree and how it works. It provides you with code implementations and detailed explanations of a binary tree and its operations in the most intuitive way. We go step by step to explore its various functions which will give you a deep insight into this awesome data structure. This will help you gain a thorough understanding of the most important data structure of all.
Problems Solving
This interactive course involves high-quality problems and is deeply focused on problem-solving. It bridges the gap between theoretical concepts and common interview problems by explaining the most common interview problems on binary trees. This will help you gain confidence and understand how to convert your learning into action. By the end of the course, you will be pretty confident that you can solve any binary tree problem thrown at you.
Who this course is for
This all-rounder course targets a variety of audiences ranging from complete beginners to experienced programmers who want to take their knowledge to the next level. You will greatly benefit from this course if you identify yourself as one of the following
- Non developers who want to start their journey to learn data structures
- Developers who want to get deepest knowledge of binary trees
- Anyone interested in improving their problem solving skills
- Anyone preparing for programming interviews
Course Contents
1. Introduction to binary trees
2. Array implementation of binary trees
3. Linked list implementation of binary trees
4. Recursive traversals in binary trees
5. Iterative traversals in binary trees
6. Constructing a binary tree
7. Insertion in binary trees
8. Pattern: Preorder traversal (Stateless)
9. Pattern: Preorder traversal (Stateful)
10. Pattern: Postorder traversal (Stateless)
11. Pattern: Postorder traversal (Stateful)
12. Pattern: Root to leaf path (Stateless)
13. Pattern: Root to leaf path (Stateful)
14. Pattern: Level order traversal
15. Pattern: Level order traversal (Columns)
16. Pattern: Lowest common anscestor
17. Pattern: Simultaneous traversal
18. Practice: Mix traversals
20. Certificate
Binary Tree
Learn all about the most critical data structure in computer science