This repository contains a curated collection of data structures and algorithm solutions implemented in Java. It is dedicated to practicing and organizing DSA problems across common categories such as trees, graphs, recursion, strings, linked lists, and backtracking.
Tree/— Binary tree and binary search tree problems, traversals, width, path sum, diameter, view, and vertical traversal.Graph_/— Graph algorithms including BFS, DFS, Dijkstra, and graph-based problem solutions.Linked list coding/— Linked list implementations and practice problems.Rescursion/— Recursion-focused practice problems.String/— String manipulation, palindrome checks, substring problems, and related exercises.BackTracking/— Backtracking and constraint-based search examples.
- Clean Java implementations for common DSA problems
- Examples organized by problem type and algorithm family
- Practice code aimed at improving understanding of core data structures
- Browse the folder that matches the topic you want to practice.
- Open the Java file for the algorithm or problem you want to study.
- Run and test the code using your Java development environment.
- Add new solutions or improvements as you continue practicing.
- Start with the
Tree/andGraph_/folders if you want to focus on fundamental search and traversal problems. - Use the
BackTracking/andRescursion/folders to practice recursive thinking and constraint solving. - Keep the code organized by adding new problems into the appropriate folder.
- Add new DSA problems in the correct category folder.
- Keep file names clear and descriptive.
- Write comments or notes when needed to explain your approach.
- Avoid adding unrelated project files.
This repository is intended for learning and practice.
A focused Java repository for practicing data structures and algorithms problems.