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.
Algorithms Adjacency Matrices Explained: A Representation of Graphs In this article, we have explained the idea of Adjacency Matrix which is good Graph Representation. We have presented it for different cases like Weighted, undirected graph along with implementation and comparison with Adjacency List.
Software Engineering Terms in CPU Scheduling: Arrival, Burst, Turnaround, Completion Time and more This article is all about the basic terminologies in CPU Scheduling such as Arrival, Waiting, Burst, Turnaround, Completion Time and more in Simple Words and we will discuss about it in detail with a real world example.
C++ Size of 2D vector in C++ In this article, we will learn how to get size of 2D vector in C++. This topic has a wide applications such as in graphs, or even in machine learning. Getting used to handling 2D vectors in C++ helps us approach our problems easier.
Theory of Computation Interview Questions on Theory of Computation (MCQ) In this article, we have present Interview Questions on Theory of Computation (MCQ). You must attempt these questions. All answers have been provided which will help you get prepared in Theory of Computation.
Rust Programming Interview Questions on Rust Programming (MCQ) In this article, we have presented the most asked Interview Questions on Rust Programming (MCQ). You must try to answer this to judge your expertise in Rust Programming Language. All questions have been explained with answers.
Algorithms Merge two sorted linked lists In this article, we will learn how to Merge two sorted linked list such that the final linked list is also sorted in linear time O(N).
Data Structures Scapegoat tree In this article, we will explore in detail about Scapegoat tree which is a Self Balancing Binary Tree without requiring any extra space which puts Scapegoat Tree at an unique advantage.
Algorithms Longest Common Prefix In this article, we are going to explore different approaches to find the longest common prefix between two strings. Same techniques can be applied to find the Longest Common Prefix for multiple strings.
Algorithms 4 Sum problem In this article, we have explored an insightful approach/ algorithm to find the 4 elements in an array whose sum is equal to the required answer (4 Sum problem). This concept finds many uses in computational geometry.
Deep Learning ShuffleNet Series (Part 2): A Comparison with Popular CNN architectures This article covers the comparison of ShuffleNet with some famous architectures. It also covers how well the newer variants of ShuffleNet are as compared to their older counterparts.
Machine Learning (ML) BERT Large Model BERT large model is a pretrained model on English language which uses a Masked Language Modeling (MLM for short). It has 24 encoder layers.
Algorithms Implement K stacks in one array In this article, we have present two approaches to design K stacks in one array. The challenge is to efficiently store the elements to use all available space in the array and maintain the time complexity of stack operations.
Algorithms Longest substring without repeating characters In this article, we have explained three approaches to the problem of finding Longest substring without repeating characters. This involves the use of Hash Map with the clever use of start and end index.
Algorithms Integer to Roman Numeral Conversion In this article, we have presented the algorithm to Convert Integer to Roman Numerals along with C++ implementation and step by step implementation.
Rust Programming MPSC messages + Shared-State Concurrency in Rust In this article, we have presented the idea of MPSC messages + Shared-State Concurrency in Rust along with Mutex. Pointer, Smart Pointer, Reference Counting and Atomic Reference Counting.
Algorithms Closest 3 Sum problem (Find all triplets close to the given sum) In this article, we have explored an insightful approach/ algorithm to find the 3 elements in an array whose sum is equal to or close to the required answer. This is an extension of the 3 Sum problem where the resulting sum needed not be exact.
JavaScript Build a Web Server in ExpressJS We have explained how you can build a Web Server in ExpressJS, a Node.js framework along with the basics of web server.
Software Engineering Get CO2 emission data using Carbon Intensity API In this article, we have explored how to get CO2 emission data for a specified time period and for specific location. For this, we have used Carbon Intensity API and have implemented the code in Python.
Java Interview Questions in Java (MCQ) In this article, we have presented several Interview Questions in Java (MCQ) covering all important topics in Java. These questions are frequently asked in Coding Interviews and you must attempt these questions.
Rust Programming Message-Sending Concurrency in Rust In this article, we have covered the idea of Closures and Communication using Multiple Producer Single Consumer (MPSC) in Rust.
Cloud Computing Containerization In this article, we will learn about containerization, how it differs from virtual machines (system virtualization) and its benefits. Containerization and virtual machines often come up in the same breadth.
Algorithms Number of Ordered Solution Pairs (X, Y) satisfying 1/X + 1/Y = 1/N We have explored two insightful approaches/ algorithms to find the Number of Ordered Solution Pairs (X, Y) satisfying 1/X + 1/Y = 1/N. This problem is used extensively in Astrophysics.
Rust Programming Intro to Concurrency in Rust So far, all of our code, all the examples and all the theories we've seen, have been ignoring one of the key features Rust aims to improve in programming. And that is of course, concurrency and parallelism. Today we're going to begin exploring these topics.
Algorithms Different ways to calculate Pi (3.14159...) We have covered different algorithms and approaches to calculate the mathematical constant pi (3.14159...). These include Nilakantha Series, Leibniz’s Formula, Ramanujan's Pi Formula and other Programming Language specific techniques.
Software Engineering Mutable and Immutable in Python In this article, we have explained the concept of Mutable and Immutable in Python and how objects are impacted with this. We have presented code examples to give an idea how it is used.