Data Structures and Algorithms

Chapters videos

Table
Chapter Name
Exercise Name
Video Link
Notes
Welcome to the Course
Course Introduction
Open
Complexity Analysis
Why Code Efficiency Matters
Open
Complexity Analysis
Measuring Code Efficiency
Open
Complexity Analysis
Time & Space Complexity
Open
Complexity Analysis
Trade-off between Space & Time
Open
Arrays & String
Introduction to Two Pointer
Open
Arrays & String
Two Pointer Deep Dive
Open
Arrays & String
Sliding Window Technique
Open
Arrays & String
Hands-on: Sliding Window Technique
Open
Arrays & String
Kadane's Algorithm
Open
Arrays & String
Hands-on: Kadane's Algorithm
Open
Sorting & Searching
Selection Sort
Open
Sorting & Searching
Hands-on: Selection Sort
Open
Sorting & Searching
Bubble Sort
Open
Sorting & Searching
Insertion Sort
Open
Sorting & Searching
Linear Search
Open
Sorting & Searching
Binary Search
Open
Sorting & Searching
Hands-on: Binary Search
Open
Sorting & Searching
Divide and Conquer Approach
Open
Sorting & Searching
Merge Sort
Open
Sorting & Searching
Hands-on: Merge Sort
Open
Sorting & Searching
Quick Sort
Open
Sorting & Searching
Hands-on: Quick Sort
Open
Sorting & Searching
ArrayList in Java
Open
Stack & Queue
Basics of Stack Data Structure
Open
Stack & Queue
Hands-on: Stack
Open
Stack & Queue
Queue Fundamentals
Open
Stack & Queue
Hands-on: Queue
Open
Stack & Queue
Types of Queue
Open
Linked Lists
Understanding Linked List
Open
Linked Lists
Types of Linked List
Open
Linked Lists
Hands-on: Linked List
Open
Linked Lists
Reversing a Linked List
Open
Hash Tables
Introduction to Hashing
Open
Hash Tables
Hash Table Data Structure
Open
Hash Tables
Building a Custom Hash Table from Scratch
Open
Hash Tables
HashSet in Java
Open
Hash Tables
HashMap in Java
Open
Recursion & Backtracking
Recap: Recursion
Open
Recursion & Backtracking
Nth Fibonacci Number
Open
Recursion & Backtracking
Hands-on : Nth Fibonacci Number
Open
Recursion & Backtracking
Recursion on Subsequence
Open
Recursion & Backtracking
Understanding Backtracking
Open
Recursion & Backtracking
N-Queens Problem
Open
Recursion & Backtracking
Hands-on: N-Queens Problem
Open
Greedy Approach
Introduction to Greedy Algorithms
Open
Greedy Approach
Fractional Knapsack
Open
Greedy Approach
Hands-on: Fractional Knapsack
Open
Dynamic Programming (DP)
Introduction to Dynamic Programming
Open
Dynamic Programming (DP)
Nth Fibonacci Number
Open
Dynamic Programming (DP)
Hands-on: Nth Fibonacci Number
Open
Dynamic Programming (DP)
Maximum Sum of Non-Adjacent Element
Open
Dynamic Programming (DP)
Ninja's Training
Open
Dynamic Programming (DP)
Grid Unique Path
Open
Dynamic Programming (DP)
0/1 Knapsack
Open
Trees
Introduction to Tree
Open
Trees
Introduction to Binary Tree
Open
Trees
Binary Tree Representation
Open
Trees
Hands-On: Binary Tree Representation
Open
Trees
Binary Tree Traversal : DFS
Open
Trees
Hands-On: DFS
Open
Trees
Binary Tree Traversal : BFS
Open
Trees
Hands-On: BFS
Open
Trees
Binary Search Tree (BST)
Open
Trees
Hands-On: BST
Open
Heap & Priority Queue
Introduction to Heap
Open
Heap & Priority Queue
Heap Fundamentals
Open
Heap & Priority Queue
Hands-on: Heap Fundamentals
Open
Heap & Priority Queue
Heap Sort
Open
Heap & Priority Queue
Hands-on: Heap Sort
Open
Heap & Priority Queue
Priority Queue in Java
Open
Graph
Introduction to Graphs
Open
Graph
Types of Graph
Open
Graph
Graph Representation
Open
Graph
Hands-on: Graph Representation
Open
Graph
Graph Traversal: BFS
Open
Graph
Hands-on: BFS
Open
Graph
Graph Traversal: DFS
Open
Graph
Hands-on: DFS
Open
Graph Algorithms
Rotten Oranges Problem
Open
Graph Algorithms
Dijkstra's Algorithm
Open
Graph Algorithms
Hands-on: Dijkstra's Algorithm
Open
Graph Algorithms
Bellman-Ford Algorithm
Open
Graph Algorithms
Topological Sorting
Open
Graph Algorithms
Hands-on: Topological Sort
Open
Graph Algorithms
Bipartite Graphs
Open
Trie
Trie Data Structure
Open
Trie
Case Study: Trie
Open
There are no rows in this table

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.