Aditya Chatterjee's Blog, page 12
December 10, 2023
Pollack's rule in Computer Architecture

Microarchitecture is like the internal design and structure of the CPU. It's about how the CPU is put together on the inside to carry out its tasks efficiently.
i.e., getting data, processing instructions, and producing output.
Longest Increasing Path in a Matrix [4 approaches explained]
This problem involves navigating a 2D matrix to find the longest path such that each element in the path is strictly greater than the previous one.
Table of ContentsProblem StatementKey TakeawaysApproach 1: BFSApproach 2: Depth-First Search (DFS)Approach 3: Dynamic ProgrammingApproach 4: ToposortReal-World ExamplesProblem StatementGiven a two-dimensional matrix of integers, our task is to find the length of the longest increasing path. In this context, a path is a sequence of adjacent...
Receiver Parameter Idiom in Golang

I came across this line of code in a GoLang code base today:
func (us UserStore) GetUsers(w http.ResponseWriter, r *http.Request) { // implementation // making use of `us` object/variable}and my honest reaction was ... humm!
To me, this wasn't new but also something that I haven't paid much attention to either. I had just realized that the variable us is actually not in the argument list.
If we take look at the above snippet, the us variable is being passed separately to the functio...
Linked List in Golang

A Linked List is a linear data structure in Computer Science that stores data in a non-contiguous fashion in computer memory. It comprises nodes or elements that are interconnected through logical links. These links are established from one node to another ...
December 9, 2023
Responsive Navigation Bar [without Bootstrap or external library]
A responsive nav-bar is a UI/UX based element, which is essential to improve the appearance and ease of navigation in websites. It consists of a 1D bar (usually) with icons and hyperlinks to take you to different parts of the same website. Almost all modern websites have a nav bar of some format, and the better-looking and functional it is, the more it improves user experience and gives a great impression, especially if you want to add it to your portfolio projects.
We can easily create a simple...
Vector of array in C++

The vector of arrays in C++ is an excellent tool for efficiently managing fixed-size arrays within a vector. This approach is particularly advantageous for organizing grouped data where each array shares a uniform size. In this structure, each element in the vector is an array of a consistent size. This method is commonly empl...
December 8, 2023
Introduction to Multi-Agent Systems (MAS)
December 6, 2023
Discovery of Speed of Light and some methods to measure it
From the ancient times to the modern days, It was a very long journey how concepts about light evolved with time and new experiments and observations. Today we all know Light is a electro-magnetic wave as well as bunch of photon particles.
The speed of light in vacuum is a fundamental constant. The accuracy of determination of speed of light really matters beacause it is the maximum possible velocity of a particle, according to the relativity theory. Many scientist Tried to calculat...
December 3, 2023
Rendezvous hashing
November 29, 2023
Unveiling the Power of WebAssembly: A Beginner's Guide
In the world of web development, a new revolutionary force is uprising and reshaping the way we build and execute web applications. Enter WebAssembly (WASM for short), a binary instruction format poised to elevate the performance and versatility of web applications. In this guide at OpenGenus, you'll learn how to use WASM, get started with it, use it for building your next application, and explore the power of WASM!
So let's just dive into this new awesome thing, i.e., WebAssembly, shall we?
Wha...

