Skip to content

ahatem/java-dsa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 

Repository files navigation

java-dsa

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.

Purpose

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.

Project Structure

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

Notes

  • 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

Contributing

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.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For questions or feedback, reach out via GitHub Issues.

About

Java implementations for practicing data structures and algorithms.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages