Browse Code Data structures and algorithms Data structure implementations Implement a stack class using an array – stack part 1 Implement a stack class using a linked list – Stack part 2 Implement a 2d array (matrix) – Array part 3 Queue implementation using a linked list – Queue part 1 Implement a doubly linked list class – Linked list part 2 Implement an array class – Array part 1 ‹ 1 2 Trees and variations Max-heap implementation – Heap part 1 Binary search tree implementation – Binary tree 2 ‹ 1 2 Graph theory Shortest path using Dijkstra’s algorithm – Graph algorithm 3 Topological Sort using DFS and Kahn’s algorithm – Graph algorithm 2 Minimum Spanning Tree using Kruskal’s algorithm – Graph algorithm 1 Graph as adjacency list – Graph implementation 1 Weighted graph as adjacency list – Graph implementation 2 Fundamental algorithms Binary search (2 solutions) – iteration and recursion Selection sort gif | code and visuals Insertion sort gif | code and visuals Bubble sort (2 solutions) – basic and optimized Heapsort (2 solutions) – iteration and recursion Merge sort gif | code and visuals Quick sort gif | Code and visuals Math Fibonacci number – find nth fibonacci 4 solutions Catalan number – find nth Catalan number 3 solutions Factorial number – calculate factorials 2 solutions Prime number – check a number is prime number 3 solutions