explaingit

blankj/awesome-java-leetcode

8,706JavaAudience · developerComplexity · 1/5Setup · easy

TLDR

A curated collection of LeetCode algorithm problem solutions written in Java, organized by difficulty and topic, to help developers prepare for technical interviews.

Mindmap

mindmap
  root((repo))
    What it does
      Java solutions
      Algorithm practice
      Interview prep
    Difficulty
      Easy problems
      Medium problems
      Hard problems
    Topics
      Arrays
      Dynamic Programming
      Trees and Linked Lists
    Company Lists
      Facebook problems
      Other companies
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Study and review Java implementations of LeetCode problems while preparing for technical interviews.

USE CASE 2

Look up how specific algorithm patterns like dynamic programming or tree traversal are solved in Java.

USE CASE 3

Find which LeetCode problems appeared in Facebook and other company interviews using the included company lists.

Tech stack

Java

Getting it running

Difficulty · easy Time to first run · 5min

In plain English

This is a collection of LeetCode algorithm problem solutions written in Java, created by an Android developer who previously competed in ACM (a university-level competitive programming contest). The author built it to keep their data structures and algorithm skills sharp by working through LeetCode problems and keeping the solutions in one organized place. The README is written in Chinese, though the problem titles and tags are in English. Problems are organized into Easy, Medium, and Hard sections, with each row showing the problem number, title, and the algorithm categories it involves (such as arrays, hash tables, dynamic programming, linked lists, trees, and so on). The actual Java source code lives in the src directory, while explanatory notes about the approach for each problem are in the note directory. The repository also includes a list of LeetCode problem numbers that have appeared in Facebook interviews, which the author compiled while preparing for a Facebook interview. A separate Companies.md file covers problem lists for other tech companies as well. This is purely a study and practice resource. It is not a library or application you would install or run. Its value is as a reference for someone preparing for technical interviews or learning algorithm patterns through concrete, working Java code examples. The collection was still being updated at the time of the last known activity.

Copy-paste prompts

Prompt 1
Using blankj/awesome-java-leetcode as reference, show me a Java solution for a medium-difficulty dynamic programming problem and explain the approach step by step.
Prompt 2
I'm preparing for a Java technical interview. Based on the patterns in blankj/awesome-java-leetcode, help me understand how to solve hash table problems efficiently.
Prompt 3
Show me which LeetCode problems from blankj/awesome-java-leetcode's company lists are most commonly asked in Facebook interviews and walk me through one solution.
Prompt 4
Using blankj/awesome-java-leetcode as a guide, help me implement a linked list reversal in Java and explain the pointer manipulation.
Open on GitHub → Explain another repo

← blankj on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.