Implements the following core data structures using C#:
- Linked List
- Doubly Linked List
- Stack
- Queue
- Binary Search Tree
- PreOrder Traversal (Recursive and Iterative)
- InOrder Traversal (Recursive and Iterative)
- PostOrder Traversal (Recursive and Iterative)
- Level Order Traversal
- Min and Max value in BST
- Least Common Ancestor (Binary Tree and BST)
- Checking if a binary tree is a valid BST or not (Recursive and Iterative)
- Max Depth of Binary Tree (Recursive and Iterative)
- Binary Heap (MinHeap and MaxHeap)
- Build Heap
- Heap Sort
- Graph (Directed and Undirected)
- Breadth First Search
- Depth First Search
- Detecting cycle in a directed graph
- Detecting cycle in an undirected graph
- Topological Sorting
- DFS
- Kahn's Algorithm
- Dijkstra's Algorithm