Aditya Chatterjee's Blog, page 184
December 29, 2020
Skew Heap
In this article, we will discuss about skew heap. Skew heap is a special variant of Leftist heap. Leftist heap is in turn, a variant of binary heap.
We will first give an overview of binary heaps, then discuss leftist heaps and finally talk about skew heaps.
Binary Heaps
Binary heaps are fundamentally, binary trees with some constraints on node values. Binary trees can have a maximum of 2 child nodes. A single child must always be the left child of it's parent. Binary heaps are of 2 types: Min h...
NP Hard problems
We will be specifically discussing NP Hard problems in this article.
NP - Polymonial time but are non-Deterministic.
A decision problem is NP-hard when there exists a polynomial-time many-one reduction of any NP problem to the current NP hard problem.
Basically, to prove a problem NP hard we need to reduce it to a problem which is already labelled NP hard. This reduction has to take polynomial time,though.
So, the next question that arises it to know the base NP Hard problem which can be used fo...
Basics of jQuery

If you are a web developer or have developed a website earlier, you must have used javascript to make your website more functional and add more features. You also have thought about the long and repetitive syntax you have to type for adding simple CSS or selecting some HTML tag and changing some text in your project.
document.querySelector(“h1”).style.color = “red”.
You must have gone through this thought and have passed it, but not this guy, named “John Resig”. John thought that he needs to ty...
December 26, 2020
11 Basic Linux commands

Are you a beginner who just has installed Linux in your system but have no idea how Linux works? Are you a developer who is trying to learn Linux? Or is this the first time you are seeing Linux and have no idea how Linux works? Then you have come to the right place to learn just enough Linux commands that will help you get started with Linux and its working.
Linux is an open-source operating system, which means you need not pay anything to use Linux or buy any license to work on Linux. It's free...
Different Types of Browser Storage
In this article, we will cover the different types of browser storage and use case examples to grasp the pros and cons. In the end, you will be able to have a better knowledge of each type. So let us get started!
Following sections in this article:
Introduction
Types of Browser Storage
Conclusion
1. Introduction
Let's understand the general concept of Browser Storage or Web Storage.** Web Storage** also known as DOM storage (Document Object Model storage), facilitates web applications with d...
December 25, 2020
Different core topics in NLP (with Python NLTK library code)

NLP (Natural Language Processing) is a branch of AI that helps computer to interpret and manipulate human language. It helps computers to read, understand and derive meaning from human languages.
In this article we are going to cover about the NLP tasks/ topics that is used to make computers understand the natural languages.
Firstly to start with NLP we have to install NLTK (Natural Language ToolKit) through Python command prompt: pip3 install nltk
After that following library are to be import i...
XLNet, RoBERTa, ALBERT models for Natural Language Processing (NLP)

In the previous article, we discussed about the in-depth working of BERT for NLP related task. In this article, we are going to explore some advanced NLP models such as XLNet, RoBERTa, ALBERT and GPT and will compare to see how these models are different from the fundamental model i.e BERT.
XLNet
The OpenAI group exhibits that pre-trained language models can be utilized to solve downstream task with no boundary or architecture modifications. They have prepared a major model, a 1.5B-parameter Tra...
LSTM & BERT models for Natural Language Processing (NLP)

There are various NLP models that are used to solve the problem of language translation. In this article, we are going to learn how the basic language model was made and then move on to the advance version of language model that is more robust and reliable.
The fundamental NLP model that is used initially is LSTM model but because of its drawbacks BERT became the favoured model for the NLP tasks.
LSTM Model
Initially LSTM networks had been used to solve the Natural Language Translation problem ...
NASNet - A brief overview
NASNet stands for Neural Search Architecture (NAS) Network and is a Machine Learning model. The key principles are different from standard models like GoogleNet and is likely to bring a major breakthrough in AI soon.
Introduction
We are all currently living in the golden age of Artificial Intelligence. In 2020, people benefit from artificial intelligence every day: music and media streaming services, Google maps, Uber, Alexa, to name a few. Be it health care, gaming, finance, the automotive indu...
Basic understanding of jemalloc
The physical memory of the system is limited, and the demand for memory is changed. The more dynamic the program is, the more important the memory management is. Choosing the right memory management algorithm will bring about obvious performance improvement.
Let's start exploring jemalloc.
First of all let's know :
What is jemalloc?
jemalloc is a general purpose malloc implementation that emphasizes fragmentation avoidance and scalable concurrency support. jemalloc first came into use as the Fre...