Welcome! This repository is a collection of concise and practical Java implementations designed to help new developers understand key coding constructs, algorithms, and system design patterns. Ideal for interview prep, hands-on learning, and sharpening your Java skills.
- Java basics (strings, recursion, arrays) - (COMING UP)
- Custom data structures (e.g., LRU Cache, Stack)
- Classical algorithms (sorting, searching, graphs) - (COMING UP)
- Concurrency (threading, producer-consumer) - (COMING UP)
- Design patterns (singleton, factory, observer) - (COMING UP)
- System design components (rate limiter, circuit breaker)
- Browse folders by topic
- Each subfolder contains:
- Java implementation
- Minimal usage example or test
- README explaining logic and concepts
- Raft Consensus Algorithm: A complete, from-scratch implementation of the Raft algorithm, demonstrating leader election, log replication, and fault tolerance.
- LRU Cache: An efficient, thread-safe Least Recently Used (LRU) cache using a HashMap and a Doubly Linked List for O(1) get and put operations.
- Circuit Breaker: A classic stability pattern to prevent cascading failures in distributed systems.
- Consistent Hashing: A clear demonstration of consistent hashing, including an advanced version with virtual nodes for better key distribution.