This repository contains Python implementations of commonly used data structures and algorithms, categorized for easy navigation. It is designed for students, beginners, and anyone preparing for coding interviews or strengthening their problem-solving skills.
Fundamental data structure implementations:
- LL_queue – Queue using Linked List
- Linear_queue – Queue using arrays (linear)
- LinkedList – Singly Linked List operations
- Stack_LL – Stack using Linked List
Algorithmic logic applied to classic problems:
- TOH – Tower of Hanoi (recursive solution)
- Minesweeper – Basic implementation of Minesweeper logic
Techniques to search elements efficiently:
- BinarySearch – Divide and conquer method
- InterpolationSearch – Improved binary-like search for uniform distributions
- LinearSearch – Simple sequential search
Arrange data in a specific order using:
- BubbleSort – Repeated swapping
- BucketSort – Distribute into buckets and sort
- CountSort – Counting occurrences (non-comparison based)
- InsertionSort – Insert elements into correct position
- MergeSort – Divide and merge
- Quicksort – Divide and conquer using pivots
- RadixSort – Digit-by-digit sorting (non-comparison based)
- SelectionSort – Repeatedly select min/max element
Work with hierarchical data:
- AVL Tree – Self-balancing binary search tree
- BinarySearchTree – Basic BST operations
- Binary Tree – Implemented using both arrays and linked lists
Miscellaneous algorithm solutions that don't fit neatly in the above categories.
- Python 3.x
- No external libraries required
git clone https://github.com/CodeByD3v/Data-Structure-Algorithm.git
cd Data-Structure-Algorithm