Data Structure Materials Materials Topics Code Introduction to Data Structures Struct Pointer Dynamic Memory Allocation 00_intro_to_ds.cpp Linked List Single Linked List Double Linked List 01_single_linked_list.cpp 02_double_linked_list.cpp Stack and Queue Stack Queue Priority Queue 03_stack_and_queue.cpp 04_priority_queue.cpp Hashing and Hash Tables Hash Table Hash Function Collision Handling 05_hashtable_linear_probing.cpp 06_hashtable_chaining.cpp Binary Search Tree Tree Binary Search Tree 07_binary_search_tree.cpp AVL Tree Binary Search Tree Rotation 08_avl_tree.cpp B-Tree 2-3 Tree B-Tree 09_b_tree.cpp Red Black Tree Coloring Red Black Tree - Heaps Max-Heap Min-Heap Min-Max Heap - Tries Tries Concept Tries Applications - Disjoint Set and Graphs Disjoint Sets Minimum Spanning Tree Shortest Path - Reading Materials Heaps: https://elvanselvano.medium.com/heaps-the-pool-of-memory-eb7c9bbabf8b Red Black Tree: https://elvanselvano.medium.com/red-black-tree-the-red-queen-3b8a45e6d305 AVL Tree: https://elvanselvano.medium.com/avl-tree-perfectly-balanced-as-all-things-should-be-ca15a6d59ac5 Visualization https://visualgo.net/en https://www.cs.usfca.edu/~galles/visualization/Algorithms.html