Interview Problems on Array MEX (minimum excluded) of a sequence (with updates) In this article, we have explored approaches to find the MEX (minimum excluded) of a sequence (with updates) efficiently with pre-computation.
Computer Architecture UEFI and Legacy boot Both UEFI and BIOS are firmware that specify an interface between the computer operating system and the underlying firmware. Legacy boot involves booting the computer using legacy firmware such as BIOS and UEFI boot involves booting a computer using the more advanced UEFI.
Computer Architecture UEFI (Unified Extensible Firmware Interface) UEFI(Unified Extensible Firmware Interface) is the interface between the operating system and the low-level initialization firmware. It initializes hardware components and is responsible for executing the OS stored in a boot device.
Algorithms Find elements that appear more than N/3 times In this article, we have solved the problem of finding elements that appear more than N/3 times. This involve ideas of Hash Map and Boyer Moore algorithm.
System Design AWS Redshift in System Design In this article, We will take a look at AWS Redshift and understand it using a real-time example.
System Design MemCached in System Design In this article, we have explored the idea of MemCached in System Design and how it is used in different systems.
System Design Google Cloud BigQuery in System Design Google BigQuery is a fully managed enterprise data warehouse that is serverless, highly scalable, and cost-effective for analyzing petabytes of data and billions of rows using ANSI SQL.
Computer Architecture Types of memory devices In this article, we have covered the different types of memory devices like CD-ROM, SD card and much more.
Computer Architecture Firmware In this article we discuss firmware - software that is directly programmed into hardware devices such as routers, cameras, network cards etc.
Computer Architecture BIOS (Basic Input Output System) We discuss BIOS - firmware stored in non-volatile memory e.g EPROM, responsible for startup procedures such as POST before passing control to the bootloader which loads the OS.
Linux Types of Boot loaders A boot-loader is responsible for loading the operating system to the Linux kernel and the Linux initial RAM disk. In this article we discuss different boot loaders for the Linux operating system.
Linux GRUB bootloader GRUB is one of the many Linux boot loaders responsible for loading an operating system into memory during startup. In this article we discuss the booting process involving GRUB and how to configure and customize GRUB.
Linux Run levels in Linux Run levels are modes of operation for computer operating systems. We discuss the different run levels in the Linux OS and demonstrate how to change the default run level.
Linux Systemd Components Systemd is a suite of utilities that provide an array of system components for the Linux OS. We look at various components within systemd.
Linux Unit files in Linux A unit file is responsible for specifying how systemd starts and runs. In this article, we discuss unit files, the contents of these files, service and target unit and unit files and how to create and edit unit files.
Linux Systemctl and Systemd in Linux The systemctl command is a systemd utility used to manage services, get information about service unit files and service states and therefore a useful utility to know for managing services on the server while systemd is an array of components for Linux OS.
Compiler Design Data-flow analysis in Compiler Design All optimizations in a compiler depend on data-flow analysis. We discuss three instances of data-flow problems, reaching definitions, live variables and available expressions.
Algorithms Max path sum between two nodes in Binary Tree In this article, we have explored algorithms to find the Max path sum between two nodes in Binary Tree along with time and space complexity.
Algorithms K-th smallest element of two sorted arrays In this article, we have explored algorithms to find the K-th smallest element of two sorted arrays. This involve the idea of Binary Search.
System Design Apache ZooKeeper in System Design In this article, we will look at Apache ZooKeeper and how it is useful in distributed systems.
System Design Bigtable in System Design Bigtable is a revolutionary internal Google database system that helped to launch the NoSQL industry. The company desired to create a database capable of providing real-time access to petabytes of data. Bigtable was born as a result.
Compiler Design Sethi Ullman algorithm The Sethi-Ullman algorithm is an optimal algorithm used for finding an optimal ordering of a computation tree. We discuss two generalizations that increase its applicability without increasing the cost.
Compiler Design L-Attributed and S-Attributed definitions and grammar We have discussed two classes of definitions that can efficiently be implemented in connection to top-down or bottom-up parsing in compilers and corresponding attribute grammars that result from serious restrictions.
System Design System Design of Snapchat This article will give an overview of the architecture, infrastructure and System Design of Snapchat, as well as provide some insight to the company (Snap Inc.'s) history.
data science Using Python for Data Analysis In this article, we will learn how Python is used for Data Analysis and introduced Python libraries that are frequently used in Data Science such as Numpy, Pandas, Matplotlib, Seaborn and others.