A collection of data structures and algorithms implemented in C# for learning and practice.
This project covers core concepts like arrays, linked lists, stacks, queues, trees, heaps, sorting, searching, recursion and pathfinding.
- Array – Basic array operations and traversal
- ArrayList – Generic dynamic array implementation
- LinkedList – Singly and doubly linked list with insert, remove, and traversal
- Stack – Built using linked list; supports push, pop, peek
- Queue – Linked list–based queue with enqueue, dequeue, peek
- Heap – Max-Heap with insert, extract-max, and heapify
- Binary Tree – Binary Search Tree (insert, search, traversals)
- Tree – General (n-ary) tree with DFS and BFS
- Trie – Prefix tree with insert, contains, starts-with, delete, and autocomplete
- Data Types – Demonstrations of C# built-in types
- Linear Search
- Binary Search
- Crystal Ball (√n jump + linear) Search
- Bubble Sort
- Selection Sort
- Insertion Sort
- QuickSort (in-place)
- Factorial
- Fibonacci (recursive and linear)
- Array sum and nested recursion examples
- Recursive maze/path solver with backtracking and path recording