Welcome to the second post in our System Design series! Today, we will delve into the Client-Server Model, a foundational concept in system design. This model underpins much of the internet and distributed computing, making it essential to understand for anyone involved in building scalable systems. What is the Client-Server Model? The Client-Server Model is a distributed application structure that partitions tasks or workloads between providers of a resource or service, called servers, and service requesters, called clients. Typically, clients and servers communicate over a network, making it possible for …
nikoo28
nikoo28
a tech-savvy guy and a design buff... I was born with the love for exploring and want to do my best to give back to the community. I also love taking photos with my phone to capture moments in my life. It's my pleasure to have you here.
-
-
Welcome to my new series on System Design! This series aims to demystify the concepts of system design, making them accessible and easy to understand. Whether you’re preparing for interviews or looking to build scalable systems, this series will provide you with the foundational knowledge you need. Why System Design? System design is crucial for several reasons: Real-World Example: Consider running a bookstore. Initially, you might handle everything manually – tracking inventory, managing orders, and so on. However, as your business grows, this approach becomes impractical. You need a system …
-
In this blog post, we’ll explore the “Maximum Product Subarray” problem, where our task is to find the contiguous subarray within an array that yields the maximum product. We’ll discuss the problem statement in detail and explore two approaches: the brute force solution and an optimized solution using dynamic programming techniques.
-
Given some input strings, we need to find the longest common prefix or the longest starting sequence of characters that is common
-
Boolean Algebra and introduction with examples. A key concept to determine logic in computer programming as well as mathematical problems.
-
Given an array of positive integers with some zeroes. You need to move all the zeroes to the end without changing the relative order of non-zero elements. A unique solution makes this problem really easy to understand.
-
Binary Search is a fabulous concept that can be used to narrow down the search range. One such problem on LeetCode explores this domain where you need to find the correct position to insert the element in a sorted array
-
Small problems like these often become a part of larger complex problems. You are given an array and for each integer you need to find out the number of smaller numbers than itself. One technique is to compare each element with every other element. Another efficient approach would be to use the counting sort approach.
-
Always make sure that we understand the problem statement first. There is an array of integers nums and we need to determine the number of good pairs. A pair (i , j ) is said to be good, if nums[i] == nums[j] and i < j. We need to determine how many pairs can we form that hold this condition. Let us look at some sample test cases: Input: nums = [ 1 , 2 , 3 , 1 , 1 , 3 ]Output: 4Explanation:There are 4 good pairs. (0 …
-
Given a sorted array and a target element, find its first and last index.