A practical study repository for data structures and algorithms, coding interviews, language fundamentals, software quality, system design, and cloud engineering. The main interview-preparation track contains complete Go and Java solutions for the shared LeetCode Top Practice Problems list.
The Go and Java problem collection contains 333 problems, organized as one independently compilable directory per problem.
| Difficulty | Problems |
|---|---|
| Easy | 85 |
| Medium | 204 |
| Hard | 44 |
| Total | 333 |
Each problem directory follows the same interview-focused structure:
0001-two-sum/
|-- README.md # Problem statement, examples, and constraints
|-- solution.md # Brute force through optimized interview approach
|-- solution.go # Go implementation
|-- Solution.java # Java implementation
|-- types.go # Local Go judge types or callbacks when required
`-- Types.java # Local Java judge types or callbacks when required
Use the complete problem index to browse by list order, difficulty, or algorithmic approach.
- Read the problem statement and clarify inputs, outputs, constraints, and edge cases.
- Explain a direct or brute-force solution before optimizing it.
- Identify the reusable pattern and state the invariant that makes the optimized approach correct.
- Implement the solution in Go or Java without referring to the checked-in implementation.
- Compare implementations, analyze time and space complexity, and test boundary cases aloud.
The solution guides are written for FAANG-style interview discussion: pattern recognition, baseline reasoning, optimization, correctness, complexity, edge cases, and language-specific implementation notes.
| Path | Contents |
|---|---|
leetcode-top-practice-problems/ |
333 documented LeetCode solutions in Go and Java |
cs-core-concepts/java-and-oop/ |
Java, OOP, SOLID, and design-pattern notes |
cs-core-concepts/golang-learning/ |
Go fundamentals, libraries, SOLID, and design patterns |
cs-core-concepts/java-vs-go-learning-path/ |
Java-to-Go comparison and migration-focused learning path |
cs-core-concepts/sqa/ |
Software quality assurance and testing concepts |
cs-core-concepts/github-best-practices/ |
GitHub workflows and collaboration practices |
cs-core-concepts/project-managment-best-practices/ |
Agile and project-management notes |
cloud-and-devops/ |
Cloud and DevOps concepts |
system-design-concepts/ |
System-design notes, patterns, and white papers |
src/leetcode/ |
Earlier Java problem-solving implementations |
src/others/ |
Additional exercises and experiments |
Go 1.22 or newer and JDK 17 or newer are required.
cd leetcode-top-practice-problems
go test ./...
go vet ./...
go run ./tools/verify-javaThe repository test validates the problem manifest and required files. The Go command compiles every Go package, and the Java verifier compiles every Java solution in isolation with its local judge types.
Problem metadata and documentation indexes are maintained by tools/general-docs. Run the generator from the Go module directory:
cd leetcode-top-practice-problems
go run ./tools/general-docsSome problem descriptions are derived from attributed third-party material. See the collection's notice and third-party license for details.