Featured Resource One-line Algorithms questions & facts Random algorithm facts for quick interview revision when you only have a minute to spare.
Book DSA Cheatsheet A Cheatsheet for data structures and algorithms practice, coding interview and problem-solving intuition.
Featured Resource One AI Systems Question Practice AI and ML systems prompts across P/D disaggregation, inference, training, RAG, platform engineering and reliability.
System Design Federation: Functional Partitioning of Database + FDBS In this article, we have explained the concept of Federation including Functional Partitioning of Database + Federated Database System (FDBS). These System Design concepts are important to design efficient Database for systems.
Algorithms Remove N-th Node from end of Singly Linked List In this article, we have explained two approaches to Remove N-th Node from end of Singly Linked List. We can do this in single pass / one traversal in O(N) time.
List of Interview Questions Interview Questions on Quick Sort In this article, we have presented Interview Questions on Quick Sort (MCQ) with detailed answers. You must practice this as Quick Sort is the most important topic for Coding Interviews.
Algorithms Letter Combinations of a Phone Number In this article, we have discussed two approaches (recursive + iterative) to solve the problem "Letter Combinations of a Phone Number" in C++ language with explanation of Time and Space complexity.
Algorithms Roman to Integer In this article, we have explained two efficient approaches / algorithms to convert Roman number to Integer. We have presented the implementation as well.
Algorithms Merge Intervals problem In this article, we will learn how to solve the Merge Overlapping Intervals problem in most efficient and easy to understand method with the help of stack. We do this in linear time O(N).
Algorithms Number of Islands in MxN matrix (of 0 and 1) In this article, we have explored an insightful approach/ algorithm to find the number of islands in MxN matrix. An extension of this algorithm is used by online battleship game engine.
Rust Programming Error Handling in Rust Let's tackle 2 topics today. One of them is about dealing with possible errors and/or mistakes we might encounter in our developing journey in Rust. The other is about learning how to write code with these in mind.
Software Engineering Web Sockets (ws:// , wss://) In this article, we will talk about webockets, it's a very important and fundamental topic for anyone interested in web and communication protocols. WebSocket is a computer communication protocol, providing full connections over a single TCP connection.
Algorithms Flood Fill Algorithms Flood Fill algorithm is an Algorithm that determines the area connected to a given node in a N-dimensional array. Some operations are performed on the connected nodes like color change. This is also known as Seed Fill Algorithm.
Algorithms Merge K sorted Linked Lists We have explained 3 different algorithms to Merge K sorted Linked Lists such that the final Linked List is also sorted.
Algorithms K-th permutation of first N integers In this article, we will understand and explore about the concept of generating k-th lexicographical permutation of first N integers. There are O(N!) permutations but you can find it in O(N) time.
Algorithms 2 Sum Closest: Find 2 elements with sum closest to target We have explained how to solve the 2 Sum Closest problem that is Find 2 elements with sum closest to a target efficiently. We have explained 3 different approaches which involves the use of Binary Search and Two Pointer technique.
List of Interview Questions Logical Reasoning Questions for Coding Interview These Logical Reasoning Questions are designed for Coding Interviews at Companies hiring for Software Development or Engineering roles (Full-time + Intern). These questions are frequently asked at Amazon, Microsoft and other companies. These are usually asked in the first round of Interview.
List of Interview Questions Behavioral Questions for Coding Interviews We have presented the most common Behavioral Questions for Coding Interviews. These are asked in the final Interview at companies like Google and Amazon for the role of SDE (full-time + Intern).
Rust Programming Ownership, Borrowing and Lifetimes in Rust One of the key elements Rust has, which is also considered the most unique feature, is Ownership model. This allows memory safe operations without a garbage collector, and completely avoids (if using safe rust), some of the big problems other languages run into when it comes to memory management.
C++ Different Ways to find element in Vector in C++ STL In this article, we have explained Different Ways to find element in Vector in C++ STL which includes using std::find(), std::find_if, std::distance, std::count and Linear Search.
Software Engineering reCAPTCHA Verification (+ How to add it to HTML?) In this article, we have explored the idea of reCAPTCHA Verification, how to setup a Google reCAPTCHA account and how to add reCAPTCHA to any HTML form.
Rust Programming Trie Data Structure in Rust In this article, we have presented the approach to implement Trie Data Structure in Rust Programming Language.
Algorithms Recovering a Binary Search Tree that has two nodes swapped In this article, we will be developing and implementing an algorithm that recovers a Binary Search Tree (BST) that had two of its nodes swapped accidentally.
Algorithms ZigZag Conversion of String with N rows In this article, we have solved the problem of ZigZag Conversion of String with N rows. We take a string and a number N (rows) as input and distribute the string in ZigZag fashion among N rows and print the final string.
C++ std::swap function in C++ In this article, we have explained the use of std::swap function in C++ with multiple C++ code examples covering primitive data types to User defined classes.
Algorithms Karger’s algorithm to find Minimum Cut In this article, we will explore how the Karger's algorithm works to find the minimum cut in a graph and its C++ implementation. This is a randomized algorithm based on Graphs.
Algorithms Maximum points on a line In this article, we have explored an insightful approach/ algorithm to find the maximum number of points on a straight line. This problem finds many uses in computational geometry.
Software Engineering Scope Resolution :: in C++ In this article, we have explored the idea of Scope Resolution operator :: in C++ which is used widely in C++ implementations to access a class inside another class, in multiple inheritance and many more.