Aditya Chatterjee's Blog, page 81

July 11, 2022

SIMD & SSE Instruction Set

In this article, we will discuss scalar computing (and some of its drawbacks), the need for vector/parallel computing, the fundamental concepts behind single instruction, multiple data (or SIMD) architecture, as well as one of its implementations in modern CPUs, namely: Intel's Streaming SIMD Extensions, or SSE for short.

Scalar Computing (SISD Architecture)

Before parallelization was widely implemented in computers systems around the world, scalar processors were used to solve computational pro...

 •  0 comments  •  flag
Share on Twitter
Published on July 11, 2022 03:43

Introduction to Spring Boot

In this article, we explore one of the most popular Frameworks for Java Developers - Spring Boot and compare it with other popular frameworks like Spring, Spring MVC, Hibernate, and Spring Data. To demonstrate the capabilities of the Spring Boot, the article shows all stages of application development from generating the project to its deployment.

Table of contents:

Spring and Spring Boot overviewSpring Boot requirementsDependency managementManual dependency management with SpringSimplifie...
 •  0 comments  •  flag
Share on Twitter
Published on July 11, 2022 01:53

July 6, 2022

Lexicographic next string

In this article, we are going to find the lexicographic next string for the given string.

What is lexicographic next string?

Lexicographic next string for a given string is the string whose rank is just 1 more than that for the current string.
For e.g.:- If we have to find the lexicographic next string of ABC then it will be ACB as it will be the next in lexicographic order as the rank of ACB is 2 and that of ABC is 1.

Some approaches :-

One approach is to find all the permutations which can be ...

 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:43

Preorder traversal in Binary Tree [Iterative + Recursive]

Contents

1.Introduction
2.Preorder Traversal of a Tree
3.Methods to find Preorder Traversal of a Tree
4.Iterative Approach
1.Code
2.Output
3.Time Complexity of the Approach
4.Space Complexity of the Approach
5.Recursive Approach
1.Code
2.Output
3.Time Complexity of the Approach
4.Space Complexity of the Approach

Introduction

Preorder traversal is one of the traversal in binary tree in which the root node is visited first then the left subtree and then the right subtree.The order can be written a...

 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:34

Different types of Firewall

What is a Firewall

Before we learn about the different types of a firewall, we should first understand what is a firewall? Back in the day when the Internet was first created, we did not need anything like firewalls. The concept itself was fairly new and not many people were able to comprehend it. But later as the Internet grew so did it's knowledge among people. Some people found out ways to exploit the Internet and use it for malicious intentions. During this age to prevent compromisation of t...

 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:15

AO* algorithm

Introduction:

AO* algorithm is a best first search algorithm. AO* algorithm uses the concept of AND-OR graphs to decompose any complex problem given into smaller set of problems which are further solved. AND-OR graphs are specialized graphs that are used in problems that can be broken down into sub problems where AND side of the graph represent a set of task that need to be done to achieve the main goal , whereas the or side of the graph represent the different ways of performing task to achiev...

 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:14

Types of NLP models

Natural Language Processing (NLP) refers to a branch of Artificial Intelligence (AI) in Computer Science that gives computers the ability to analyze and interpret human language. The ultimate goal of NLP is to train the computer to reach a human-level understanding by combining computational linguistics, statistical, machine learning and deep learning models. Practical usage of NLP models includes speech recognition, part of speech tagging, sentiment analysis and natural language generation.

👶 ...
 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:10

Contrastive Learning

Contrastive learning is a method for structuring the work of locating similarities and differences for an ML model. This method can be used to train a machine learning model to distinguish between similar and different photos.

A scoring function, which is a metric that assesses the similarity between two features, can be used to represent the inner workings of contrastive learning.
Unlabeled data points are juxtaposed against one another as part of the machine learning paradigm known as contrast...

 •  0 comments  •  flag
Share on Twitter
Published on July 06, 2022 09:07

July 4, 2022

AVX-512

In this article, we will discuss Intel's Advanced Vector Extensions 512 (AVX-512), which is an instruction set that was created to accelerate computational performance in areas such as artificial intelligence/deep learning, scientific simulations, cryptographic hashing, data protection and more. We will also take a closer look at some of its inherent advantages and disadvantages, and compare it with other instruction sets such as its predecessors, AVX and AVX-2.

What is AVX-512?

Before the days ...

 •  0 comments  •  flag
Share on Twitter
Published on July 04, 2022 06:01

Time and Space Complexity of Merge Sort on Linked List

In this article, we will learn about the space and time complexity of the Merge sort algorithm on Linked List using Mathematical analysis of various cases.

Table of Contents :

Merge Sort algorithm on Linked ListTime Complexity Analysis of Merge Sort on Linked ListWorst Case Time Complexity AnalysisAverage Case Time Complexity AnalysisBest Case Time Complexity AnalysisSpace Complexity AnalysisComparison between Merge sort on array and linked listFAQs on Merge Sort algorithmMerge Sort Al...
 •  0 comments  •  flag
Share on Twitter
Published on July 04, 2022 05:13