This is my personal public repository for practicing data structures, algorithms, and LeetCode solutions in Java. It’s a coding lab for experimenting with core computer science concepts and improving my problem-solving skills.
This repository is for my personal practice, focusing on:
- Data Structures: Arrays, linked lists, stacks, queues, trees, graphs, heaps, and hash tables.
- Algorithms: Searching (e.g., binary search), sorting (e.g., quicksort, mergesort), and other algorithmic techniques.
- LeetCode Solutions: Solutions to LeetCode problems to hone problem-solving skills.
The code is written for learning and experimentation, shared publicly for reference or potential collaboration.
java-dsa/
├── src/
│ ├── datastructures/
│ │ ├── linear/ # Linear data structures (array, linked list, stack, queue)
│ │ └── nonlinear/ # Non-linear data structures (trees, graphs, heaps, hash tables)
│ ├── algorithms/ # Future: searching, sorting, and LeetCode solutions
│ │ ├── searching/ # (Planned) e.g., binary search, linear search
│ │ ├── sorting/ # (Planned) e.g., quicksort, mergesort
│ │ └── leetcode/ # (Planned) LeetCode problem solutions
│ └── Main.java # Entry point for testing
├── README.md # This file
├── .gitignore # Git ignore file
├── LICENSE # License file
- This is a work-in-progress project. New data structures, algorithms, and LeetCode solutions will be added over time.
- LeetCode solutions may include comments when I’m able to provide explanations.
- The code focuses on learning and experimentation, often aiming for clarity but sometimes exploring optimized solutions.
- Testing can be done via
Main.java
This is primarily a personal practice project. If you have suggestions or want to collaborate, feel free to open an issue or pull request on GitHub.
This project is licensed under the MIT License - see the LICENSE file for details.
For questions or feedback, reach out via GitHub Issues.