Data Structures
Linked Lists
- Singly Linked List
- Doubly Linked List
- Circular Singly Linked List
- Circular Doubly Linked List
Stacks
- Stack using array
- Stack using linked list
- Application
- Parenthesis Checker
- Infix To Postfix
Queues
- Queue using array
- Queue using linked list
- Circular Queue
- Deque
- Priority Queue
- Application
- Polynomial
Recursion
- Euclidean GCD
- Recursive Fibonacci
Trees
Heaps
- Max heap using array
Graphs
- Un-directed (adjacency list)
- Directed (adjacency list)
Searching
- Linear Search
- Binary Search
Sorting
- Heap Sort (descending)
- Quick Sort (Partition Exchange Sort)
- Radix Sort (Bucket Sort)
- Shell Sort