ALGORITHM YOU SHOULD KNOW for PREPARING SYSTEM DESIGN INTERVIEW ๐ก
๐บREQUIREMENTS :-
KNOW WHEN TO USE
KNOW HOW IT WORKS
โพ1) BLOOM FILTER
It is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
- use case :: Build a Web crawler
โพ2) FRUGAL STREAMING
It uses only one unit of memory per group to compute a quantile for each group.
-use case :: Find the nth percentile of the data stream.
โพ3) GEOHASH/ S2 GEOMETRY
A collection of efficient yet exact mathematical predicates for testing relationships among geometric primitives.
-use case :: Location-based search results with DynamoDb and Geohash.
โพ4) HYPERLOGLOG
It is an algorithm for the count-distinct problem, approximating the number of distinct elements in a multiset.
-use case :: privacy-preserving traffic heat map for the city.
โพ5) LEAKY BUCKET/ TOKEN BUCKET
A mechanism to control the amount and the rate of the traffic sent to the network.
-use case :: Design a scalable rate-limiting algorithm.
โพ6) LOSSY COUNT
It is used to identify elements in a data stream whose frequency count exceeds a user-given threshold.
-use case :: Frequency count over the data streams.
โพ7) OPERATIONAL TRANSFORMATION
It is used for supporting a range of collaboration functionalities in advanced collaborative software systems.
-use case :: Handling editing collision in Google docs.
โพ8) QUADTREE/ RTREE
It is a two-dimensional analog of octrees and is most often used to partition a two-dimensional space by recursively subdividing it into four quadrants or regions.
-use case :: Find nearby interest points
โพ9) RAY CASTING
It is the most basic of many computer graphics rendering algo that uses geometric algo of ray tracing.
-use case :: Using longitude and latitude, return the Country of the point.
โพ10) REVERSE INDEX
It is an index of keywords that stores records of documents that contain keywords in the list.
-use case: Building a complete Tweet index.
โพ11) RSYNC ALGORITHM
Used for reducing the cost of a file transfer by avoiding the transfer of blocks that are already at the destination.
-use case :: Streaming file Sync
โพ12) TRIE ALGORITHM
Trie is an efficient information reTrieval data structure. Using Trie, search complexities can be brought to optimal limit (key length)
-use case :: Autocomplete features using Trie
13) STRING BUFFER
-use case :: Banking transactions because it follows thread synchronisation
13) STRING BUILDER
-use case :: BOOKMYSHOW OR IRCTC ticket booking because it NOT following thread synchronisation
collab credit - windsoon / ansh /Aman
#software #design #google #systemdesign #backend #backenddeveloper #softwareengineer #algorithms
๐บREQUIREMENTS :-
KNOW WHEN TO USE
KNOW HOW IT WORKS
โพ1) BLOOM FILTER
It is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
- use case :: Build a Web crawler
โพ2) FRUGAL STREAMING
It uses only one unit of memory per group to compute a quantile for each group.
-use case :: Find the nth percentile of the data stream.
โพ3) GEOHASH/ S2 GEOMETRY
A collection of efficient yet exact mathematical predicates for testing relationships among geometric primitives.
-use case :: Location-based search results with DynamoDb and Geohash.
โพ4) HYPERLOGLOG
It is an algorithm for the count-distinct problem, approximating the number of distinct elements in a multiset.
-use case :: privacy-preserving traffic heat map for the city.
โพ5) LEAKY BUCKET/ TOKEN BUCKET
A mechanism to control the amount and the rate of the traffic sent to the network.
-use case :: Design a scalable rate-limiting algorithm.
โพ6) LOSSY COUNT
It is used to identify elements in a data stream whose frequency count exceeds a user-given threshold.
-use case :: Frequency count over the data streams.
โพ7) OPERATIONAL TRANSFORMATION
It is used for supporting a range of collaboration functionalities in advanced collaborative software systems.
-use case :: Handling editing collision in Google docs.
โพ8) QUADTREE/ RTREE
It is a two-dimensional analog of octrees and is most often used to partition a two-dimensional space by recursively subdividing it into four quadrants or regions.
-use case :: Find nearby interest points
โพ9) RAY CASTING
It is the most basic of many computer graphics rendering algo that uses geometric algo of ray tracing.
-use case :: Using longitude and latitude, return the Country of the point.
โพ10) REVERSE INDEX
It is an index of keywords that stores records of documents that contain keywords in the list.
-use case: Building a complete Tweet index.
โพ11) RSYNC ALGORITHM
Used for reducing the cost of a file transfer by avoiding the transfer of blocks that are already at the destination.
-use case :: Streaming file Sync
โพ12) TRIE ALGORITHM
Trie is an efficient information reTrieval data structure. Using Trie, search complexities can be brought to optimal limit (key length)
-use case :: Autocomplete features using Trie
13) STRING BUFFER
-use case :: Banking transactions because it follows thread synchronisation
13) STRING BUILDER
-use case :: BOOKMYSHOW OR IRCTC ticket booking because it NOT following thread synchronisation
collab credit - windsoon / ansh /Aman
#software #design #google #systemdesign #backend #backenddeveloper #softwareengineer #algorithms
ALGORITHM YOU SHOULD KNOW for PREPARING SYSTEM DESIGN INTERVIEW ๐ก
๐บREQUIREMENTS :-
KNOW WHEN TO USE
KNOW HOW IT WORKS
โพ1) BLOOM FILTER
It is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
- use case :: Build a Web crawler
โพ2) FRUGAL STREAMING
It uses only one unit of memory per group to compute a quantile for each group.
-use case :: Find the nth percentile of the data stream.
โพ3) GEOHASH/ S2 GEOMETRY
A collection of efficient yet exact mathematical predicates for testing relationships among geometric primitives.
-use case :: Location-based search results with DynamoDb and Geohash.
โพ4) HYPERLOGLOG
It is an algorithm for the count-distinct problem, approximating the number of distinct elements in a multiset.
-use case :: privacy-preserving traffic heat map for the city.
โพ5) LEAKY BUCKET/ TOKEN BUCKET
A mechanism to control the amount and the rate of the traffic sent to the network.
-use case :: Design a scalable rate-limiting algorithm.
โพ6) LOSSY COUNT
It is used to identify elements in a data stream whose frequency count exceeds a user-given threshold.
-use case :: Frequency count over the data streams.
โพ7) OPERATIONAL TRANSFORMATION
It is used for supporting a range of collaboration functionalities in advanced collaborative software systems.
-use case :: Handling editing collision in Google docs.
โพ8) QUADTREE/ RTREE
It is a two-dimensional analog of octrees and is most often used to partition a two-dimensional space by recursively subdividing it into four quadrants or regions.
-use case :: Find nearby interest points
โพ9) RAY CASTING
It is the most basic of many computer graphics rendering algo that uses geometric algo of ray tracing.
-use case :: Using longitude and latitude, return the Country of the point.
โพ10) REVERSE INDEX
It is an index of keywords that stores records of documents that contain keywords in the list.
-use case: Building a complete Tweet index.
โพ11) RSYNC ALGORITHM
Used for reducing the cost of a file transfer by avoiding the transfer of blocks that are already at the destination.
-use case :: Streaming file Sync
โพ12) TRIE ALGORITHM
Trie is an efficient information reTrieval data structure. Using Trie, search complexities can be brought to optimal limit (key length)
-use case :: Autocomplete features using Trie
13) STRING BUFFER
-use case :: Banking transactions because it follows thread synchronisation
13) STRING BUILDER
-use case :: BOOKMYSHOW OR IRCTC ticket booking because it NOT following thread synchronisation
collab credit - windsoon / ansh /Aman
#software #design #google #systemdesign #backend #backenddeveloper #softwareengineer #algorithms
๐บREQUIREMENTS :-
KNOW WHEN TO USE
KNOW HOW IT WORKS
โพ1) BLOOM FILTER
It is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
- use case :: Build a Web crawler
โพ2) FRUGAL STREAMING
It uses only one unit of memory per group to compute a quantile for each group.
-use case :: Find the nth percentile of the data stream.
โพ3) GEOHASH/ S2 GEOMETRY
A collection of efficient yet exact mathematical predicates for testing relationships among geometric primitives.
-use case :: Location-based search results with DynamoDb and Geohash.
โพ4) HYPERLOGLOG
It is an algorithm for the count-distinct problem, approximating the number of distinct elements in a multiset.
-use case :: privacy-preserving traffic heat map for the city.
โพ5) LEAKY BUCKET/ TOKEN BUCKET
A mechanism to control the amount and the rate of the traffic sent to the network.
-use case :: Design a scalable rate-limiting algorithm.
โพ6) LOSSY COUNT
It is used to identify elements in a data stream whose frequency count exceeds a user-given threshold.
-use case :: Frequency count over the data streams.
โพ7) OPERATIONAL TRANSFORMATION
It is used for supporting a range of collaboration functionalities in advanced collaborative software systems.
-use case :: Handling editing collision in Google docs.
โพ8) QUADTREE/ RTREE
It is a two-dimensional analog of octrees and is most often used to partition a two-dimensional space by recursively subdividing it into four quadrants or regions.
-use case :: Find nearby interest points
โพ9) RAY CASTING
It is the most basic of many computer graphics rendering algo that uses geometric algo of ray tracing.
-use case :: Using longitude and latitude, return the Country of the point.
โพ10) REVERSE INDEX
It is an index of keywords that stores records of documents that contain keywords in the list.
-use case: Building a complete Tweet index.
โพ11) RSYNC ALGORITHM
Used for reducing the cost of a file transfer by avoiding the transfer of blocks that are already at the destination.
-use case :: Streaming file Sync
โพ12) TRIE ALGORITHM
Trie is an efficient information reTrieval data structure. Using Trie, search complexities can be brought to optimal limit (key length)
-use case :: Autocomplete features using Trie
13) STRING BUFFER
-use case :: Banking transactions because it follows thread synchronisation
13) STRING BUILDER
-use case :: BOOKMYSHOW OR IRCTC ticket booking because it NOT following thread synchronisation
collab credit - windsoon / ansh /Aman
#software #design #google #systemdesign #backend #backenddeveloper #softwareengineer #algorithms
๐๐ผ๐บ๐ฝ๐น๐ฒ๐๐ฒ ๐ก๐ผ๐๐ฒ๐ ๐ข๐ป ๐ฅ๐๐ฆ๐ง ๐๐ฃ๐ ๐ณ๐ผ๐ฟ ๐๐ป๐๐ฒ๐ฟ๐๐ถ๐ฒ๐ ๐ฃ๐ฟ๐ฒ๐ฝ๐ฎ๐ฟ๐ฎ๐๐ถ๐ผ๐ป.
๐๐ก๐ฒ ๐๐๐๐ ๐๐๐ ๐ข๐ฌ ๐๐ฆ๐ฉ๐จ๐ซ๐ญ๐๐ง๐ญ ๐ญ๐จ ๐๐๐๐ซ๐ง?
๐ ๐๐๐, ๐๐ฃ๐๐ฅ๐ค๐๐ฃ๐ฉ๐จ, ๐๐ค๐จ๐ฉ๐ข๐๐ฃ, ๐พ๐๐๐ฟ, ๐พ๐ช๐ง๐ก, ๐๐๐๐, ๐๐ฉ๐๐ฉ๐ช๐จ ๐พ๐ค๐๐, ๐๐๐ฆ๐ช๐๐จ๐ฉ, ๐๐๐จ๐ฅ๐ค๐ฃ๐จ๐, ๐ผ๐ช๐ฉ๐๐๐ฃ๐ฉ๐๐๐๐ฉ๐๐ค๐ฃ, or something elseโฆ
If youโre familiar with the above word then surely you might have worked on some kinds of APIs (especially those who are experienced developers) in your backend application. Maybe a payment gateway API, Google Maps API, Sending an Email APIs, or any other kind of APIs depending on the type of application and the requirements.
The most popular and common thing you will hear while working on API isโฆ
๐ฅ๐๐ฆ๐ง ๐๐ฃ๐โฆ
What it is? Why is it being used? Why it is the first priority of programmers when it comes to implementing an API? Many questions will pop up in your mind when you will start working on REST API.
So here you will get all the answers.
https://www.linkedin.com/in/aman-raj-6168b616a
#restapi #frontend #backenddeveloper #json #postman #crud #statuscode #databases #sql #nosql #dsa #interviewpreparation #interview #jobs #nodejs #reactjs #python #javascript #java #webdevelopment #developer #softwareengineer #itservices #services #fullstackdeveloper #aws #cloud #authentication #linkedin #content #google #email
๐๐ก๐ฒ ๐๐๐๐ ๐๐๐ ๐ข๐ฌ ๐๐ฆ๐ฉ๐จ๐ซ๐ญ๐๐ง๐ญ ๐ญ๐จ ๐๐๐๐ซ๐ง?
๐ ๐๐๐, ๐๐ฃ๐๐ฅ๐ค๐๐ฃ๐ฉ๐จ, ๐๐ค๐จ๐ฉ๐ข๐๐ฃ, ๐พ๐๐๐ฟ, ๐พ๐ช๐ง๐ก, ๐๐๐๐, ๐๐ฉ๐๐ฉ๐ช๐จ ๐พ๐ค๐๐, ๐๐๐ฆ๐ช๐๐จ๐ฉ, ๐๐๐จ๐ฅ๐ค๐ฃ๐จ๐, ๐ผ๐ช๐ฉ๐๐๐ฃ๐ฉ๐๐๐๐ฉ๐๐ค๐ฃ, or something elseโฆ
If youโre familiar with the above word then surely you might have worked on some kinds of APIs (especially those who are experienced developers) in your backend application. Maybe a payment gateway API, Google Maps API, Sending an Email APIs, or any other kind of APIs depending on the type of application and the requirements.
The most popular and common thing you will hear while working on API isโฆ
๐ฅ๐๐ฆ๐ง ๐๐ฃ๐โฆ
What it is? Why is it being used? Why it is the first priority of programmers when it comes to implementing an API? Many questions will pop up in your mind when you will start working on REST API.
So here you will get all the answers.
https://www.linkedin.com/in/aman-raj-6168b616a
#restapi #frontend #backenddeveloper #json #postman #crud #statuscode #databases #sql #nosql #dsa #interviewpreparation #interview #jobs #nodejs #reactjs #python #javascript #java #webdevelopment #developer #softwareengineer #itservices #services #fullstackdeveloper #aws #cloud #authentication #linkedin #content #google #email