Skip to content

Falasefemi2/neetcode150

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NeetCode 150 Java Solutions

This repository contains Java implementations of the problems from the NeetCode 150 β€” a curated list of 150 essential data structures and algorithms problems.

The goal is to provide clear, well-documented, and efficient solutions for each proble


πŸ“š Table of Contents


πŸ“– About

NeetCode 150 is a popular set of coding interview questions covering a wide range of topics including:

  • Arrays
  • Linked Lists
  • Trees
  • Hash Maps
  • Graphs
  • Dynamic Programming
  • Heaps
  • Tries
  • Backtracking
  • Sliding Window

This project provides:

  • βœ… Java solutions for each problem
  • πŸ“ Explanations and inline comments
  • πŸ§ͺ Unit tests for correctness

πŸ“ Project Structure

neetcode150/
β”œβ”€β”€ pom.xml                      # Maven configuration
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main/
β”‚   β”‚   └── java/
β”‚   β”‚       └── com/neetcode/
β”‚   β”‚           └── App.java     # Main application (entry point)
β”‚   β”œβ”€β”€ test/
β”‚   β”‚   └── java/
β”‚   β”‚       └── com/neetcode/
β”‚   β”‚           └── AppTest.java # Unit tests
β”‚   └── README.md                # Project documentation
└── target/                      # Compiled files (auto-generated)

How to Use

Prerequisites

Build and Run

  1. Clone the repository:

    git clone https://github.com/Falasefemi2/neetcode150.git
    cd neetcode150
  2. Compile the project:

    mvn compile
  3. Run tests:

    mvn test
  4. Run the main application (if applicable):

    mvn exec:java -Dexec.mainClass="com.neetcode.App"

Adding New Solutions

  • Add your solution in the appropriate package under src/main/java/com/neetcode/.
  • Write corresponding unit tests in src/test/java/com/neetcode/.

How to Contribute

Contributions are welcome! To contribute:

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature/your-feature-name
  3. Add your solution and tests.
  4. Commit your changes: git commit -m "Add solution for [problem name]"
  5. Push to your fork: git push origin feature/your-feature-name
  6. Open a pull request.

License

This project is licensed under the MIT License. See LICENSE for details.

Acknowledgements

  • NeetCode for the problem list and explanations.
  • Java and open-source community for tools and libraries.

Releases

No releases published

Packages

No packages published

Languages