11Computer Science problems in Java.
22
3+ ### Topics covered
4+ 1 . LinkedList
5+ 1 . Fast and Slow Pointer
6+ 1 . Midpoint of LinkedList
7+ 2 . Nth element removal from the end of the list
8+
39## Backlog
410
511### Problems
@@ -9,10 +15,6 @@ Computer Science problems in Java.
9152 . You have N cars numbered from 1 to N. Car 1 is open and all the other cars are closed. Each car has a list of keys
1016 where key i can open the car i. Find out if we can open all the cars.
1117
12- ### Design
13-
14- 1 . LLD of chess
15-
1618### Patterns
1719
18201 . Two Pointers
@@ -475,3 +477,90 @@ Computer Science problems in Java.
475477* Batch framework for Java — https://github.com/j-easy/easy-batch
476478* Object-functional extension for Java — https://github.com/vavr-io/vavr
477479* Java binary serialization and cloning — https://github.com/EsotericSoftware/kryo
480+
481+ ### Design
482+
483+ 1 . LLD of chess
484+
485+
486+ ### System Design Problems
487+
488+ #### Basics
489+
490+ 1 . Design a chess game
491+ 2 . Design a simple URL shortening service.
492+ 3 . Design a basic chat application.
493+ 4 . Design a file storage system.
494+ 5 . Design a simple social media platform.
495+ 6 . Design a simple search engine.
496+ 7 . Design a simple e-commerce website.
497+ 8 . Design a basic ride-sharing system.
498+ 9 . Design a basic video streaming service.
499+ 10 . Design a simple recommendation system.
500+ 11 . Design a basic food delivery app.
501+ 12 . Design a parking lot management system.
502+ 13 . Design a simple music streaming service.
503+ 14 . Design a basic online ticket booking system.
504+ 15 . Design a simple note-taking application.
505+ 16 . Design a weather forecasting system.
506+ 17 . Design a basic email service.
507+ 18 . Design a file synchronization system.
508+ 19 . Design a simple calendar application.
509+ 20 . Design a basic online quiz platform.
510+ 21 . Design a user authentication system.
511+
512+ #### Advanced
513+
514+ 1 . Design a URL-shortening service like bit.ly.
515+ 2 . Design a distributed key-value store like Redis.
516+ 3 . Design a scalable social network like Facebook.
517+ 4 . Design a scalable recommendation system like Netflix.
518+ 5 . Design a distributed file system like Hadoop's HDFS.
519+ 6 . Design a real-time messaging system like WhatsApp.
520+ 7 . Design a web crawler like Google.
521+ 8 . Design a distributed cache like Memcached.
522+ 9 . Design a content delivery network (CDN) like Cloudflare.
523+ 10 . Design a scalable search engine like Google.
524+ 11 . Design a ride-sharing system like Uber.
525+ 12 . Design a video streaming service like YouTube.
526+ 13 . Design an online food delivery system like Zomato.
527+ 14 . Design a collaborative document editing system like Google Docs.
528+ 15 . Design an e-commerce platform like Amazon.
529+ 16 . Design a recommendation system for an online marketplace.
530+ 17 . Design a fault-tolerant distributed database system.
531+ 18 . Design a scalable event-driven system like Twitter.
532+ 19 . Design a scalable photo-sharing platform like Instagram.
533+ 20 . Design a distributed task scheduling system.
534+
535+ ### Design Patterns
536+
537+ #### Creational patterns
538+ These patterns provide various object creation mechanisms, which increase the flexibility and reuse of existing code.
539+
540+ 1 . Factory Method
541+ 2 . Abstract Factory
542+ 3 . Builder
543+ 4 . Prototype
544+ 5 . Singleton
545+
546+
547+ #### Structural patterns
548+ These patterns explain how to assemble objects and classes into larger structures while keeping these structures flexible and efficient.
549+
550+ 1 . Adapter
551+ 2 . Bridge
552+ 3 . Composite
553+ 4 . Decorator
554+ 5 . Facade
555+ 6 . Flyweight
556+ 7 . Proxy
557+
558+ #### Behavioral patterns
559+ These patterns are concerned with algorithms and the assignment of responsibilities between objects.
560+
561+ 1 . Chain of Responsibility
562+ 2 . Command
563+ 3 . Iterator
564+ 4 . Mediator
565+ 5 . Memento
566+ 6 . Observer
0 commit comments