# Data Structures Didactic Course in Online with Scratch Examples

You will learn how to code various data structures together with simple to follow step-by-step instructions. Every data structure presented will be accompanied by some working source code (in Java) to solidify your understanding.

### Course Timings:

• Course Contents
• (0:00:00) Abstract data types
• (0:04:28) Introduction to Big-O
• (0:17:00) Dynamic and Static Arrays
• (0:27:40) Dynamic Array Code
• (0:49:16) Doubly Linked List Code
• (0:58:26) Stack Introduction
• (1:09:40) Stack Implementation
• (1:12:49) Stack Code
• (1:15:58) Queue Introduction
• (1:22:03) Queue Implementation
• (1:27:26) Queue Code
• (1:31:32) Priority Queue Introduction
• (1:44:16) Priority Queue Min Heaps and Max Heaps
• (1:49:55) Priority Queue Inserting Elements
• (1:59:27) Priority Queue Removing Elements
• (2:13:00) Priority Queue Code
• (2:28:26) Union Find Introduction
• (2:33:57) Union Find Kruskal's Algorithm
• (2:40:04) Union Find - Union and Find Operations
• (2:50:30) Union Find Path Compression
• (2:56:37) Union Find Code
• (3:03:54) Binary Search Tree Introduction
• (3:15:57) Binary Search Tree Insertion
• (3:21:20) Binary Search Tree Removal
• (3:34:47) Binary Search Tree Traversals
• (3:46:17) Binary Search Tree Code
• (3:59:26) Hash table hash function
• (4:16:25) Hash table separate chaining
• (4:24:10) Hash table separate chaining source code
• (4:35:44) Hash table open addressing
• (4:46:36) Hash table linear probing
• (5:00:21) Hash table quadratic probing
• (5:09:32) Hash table double hashing
• (5:23:56) Hash table open addressing removing
• (5:31:02) Hash table open addressing code
• (5:45:36) Fenwick Tree range queries
• (5:58:46) Fenwick Tree point updates
• (6:03:09) Fenwick Tree construction
• (6:09:21) Fenwick tree source code
• (6:14:47) Suffix Array introduction
• (6:17:54) Longest Common Prefix (LCP) array
• (6:21:07) Suffix array finding unique substrings
• (6:25:36) Longest common substring problem suffix array
• (6:37:04) Longest common substring problem suffix array part 2
• (6:43:41) Longest Repeated Substring suffix array
• (6:48:13) Balanced binary search tree rotations
• (6:56:43) AVL tree insertion
• (7:05:42) AVL tree removals
• (7:14:12) AVL tree source code
• (7:30:49) Indexed Priority Queue | Data Structure
• (7:55:10) Indexed Priority Queue | Data Structure | Source Code