This repository contains my solutions to Data Structures and Algorithms (DSA) problems implemented in Java.
The aim of this repo is to build a well-structured reference of problems – starting from basics and moving towards advanced concepts.
DSA-in-Java/
- ├── Arrays/
- ├── Searching/
- ├── Sorting/
- ├── Strings/
- ├── Recursion/
- └── ...
- Each folder contains Java programs related to that topic.
- File names are self-explanatory (e.g.,
BinarySearchRecursive.java).
- 🔹 Arrays → palindrome check, reverse array, merge arrays, largest & smallest element, etc.
- 🔹 Searching → linear search, binary search (iterative & recursive), position of element.
- 🔹 Sorting → bubble sort, insertion sort, merge sort, quick sort, heap sort.
- 🔹 Strings → palindrome string, anagram check, reverse words, character frequency.
- 🔹 Recursion → factorial, Fibonacci, tower of Hanoi, binary search recursion.
- 🔹 Advanced (coming soon) → dynamic programming, graphs, backtracking, greedy algorithms.
- Clone the repository
git clone https://github.com/Arpita01-work/DSA-in-Java.git
- Navigate into the folder
cd DSA-in-Java - Compile and run any program using:
javac Arrays/Palindrome.java java Arrays.Palindrome
- Arrays – 10+ problems
- Searching – 5+ problems
- Sorting – in progress
- Strings – in progress
- Recursion – upcoming
- Dynamic Programming – upcoming
- Organized topic-wise for easy navigation
- Well-commented Java solutions
- Covers problems from basic → advanced
- Continuously updated as part of my DSA learning journey
- If you have suggestions, optimizations, or additional problems to add, feel free to:
- Fork the repo
- Create a new branch
- Submit a pull request 🚀