Description
In this course, you will :
- Detailed review of all common data structures as well as implementation level details in C++ to help readers become well-versed in all the different data structures they can use to write better code!
Syllabus :
1. Introduction to Complexity Measures
- Comparing Algorithms
- Introduction to Asymptotic Analysis and Big O
- Other Common Asymptotic Notations and Why Big O Trumps Them
- Useful Formulae
- Common Complexity Scenarios
2. Introduction to Arrays
- What is an Array?
- Multidimensional Arrays
3. Introduction to Linked Lists
- Singly Linked Lists (SLL)
- Basic Linked List Operations
- Singly Linked List Insertion
- Doubly Linked Lists (DLL)
- Singly Linked Lists vs. Doubly Linked Lists
4. Introduction to Stack/Queues
- What is a Stack?
- Stack (Implementation)
- What is a Queue?
- Queue (Implementation)
5. Introduction to Graphs
- What is a Graph?
- Types of Graphs
- Representation of Graphs
- Graph Implementation
- Complexities of Graph Operations
- What is a Bipartite Graph?
- Graph Traversal Algorithms
6. Introduction to Trees
- An Introduction to Trees and Basic Tree Properties!
- What is a Binary Tree?
- What Makes a Tree 'balanced'?
- More on Complete Binary Trees
- Skewed Binary Trees
- What is a Binary Search Tree (BST)?
- Implementing a Binary Search Tree in C++
- Binary Search Tree Insertion
- Binary Search Tree Insertion (Implementation)
- Searching in a Binary Search Tree (Implementation)
- Deletion in Binary Search Tree
- Deletion in Binary Search Tree (Implementation)
- Pre-Order Traversal
- Post-Order Traversal
- In-Order Traversal
- What is an AVL Tree?
- AVL Insertion
- AVL Deletion
- What is a Red-Black Tree?
- Red-Black Tree Insertion
- Red-Black Tree Deletion
- What is 2-3 Tree?
- Insertion
- Deletion
- Trees
- Overview of Trees
7. Trie
- What is a Trie?
- Structure of a Trie
- Insertion in a Trie
- Search in a Trie
- Deletion in Trie
8. Introduction to Heap
- What is a Heap?
- Max Heap: Introduction
- Implementation
- Min Heap: Introduction
- Min Heap (Implementation)
9. Introduction to Hashing
- What is a Hash Table?
- The Hash Function
- Collisions in Hash Tables
- Building a Hash Table from Scratch
- Add/Remove & Search in Hash Table (Implementation)
- A Quick Overview of Hash Tables
- Trie vs. Hash Table
- unordered_map vs unordered_set