Aditya Chatterjee's Blog, page 97

April 14, 2022

T&& (double ampersand) in C++11

In this article, we have explored the idea of T&& (double ampersand) in C++11. T&& was firstly introduced in the C++ 11 standard which declares an rvalue reference.

References

There two value references-

lvalue referencervalue reference

"L" stands for left in lvalue reference and "R" stands for right in rvalue reference.The thing to remember is that these are properties of expressions and not objects.

lvalue continue to exists beyond a expression while rvalue till an expression ends baecause ...

 •  0 comments  •  flag
Share on Twitter
Published on April 14, 2022 13:17

System Design of School Management Software

In this article, we will be exploring the System Requirements, Architecture, Low-level design, database design, and examples of School Management Software.

Table of Contents

School Management SystemSystem RequirementsFunctional RequirementsNon-functional RequirementsSoftware RequirementsHardware RequirementsSystem DesignArchitecture of the SystemSubsystem DecompositionLow-Level DesignDatabase DesignExamples of School Management SoftwareSchool Management System

School manageme...

 •  0 comments  •  flag
Share on Twitter
Published on April 14, 2022 13:07

System Design of Fee Management System

In this article, we will take a look at the key features a fee management system needs to offer, its high-level, low-level design, database design, and some of the features that turnkey software solutions offer.

Table of contents:

Fee Management SystemSystem RequirementsFunctional RequirementsNon - Functional RequirementsSoftware RequirementsHigh-Level DesignFor a small settingFor a large settingLow-Level Design and ClassesDatabase Design of Library Management SystemTurnkey Soft...
 •  0 comments  •  flag
Share on Twitter
Published on April 14, 2022 11:21

April 13, 2022

Cross entropy method for optimization

In this article, we will understand the cross entropy method that is widely used as an optimization technique in machine learning.

Table of contentsWhat is entropy?The cross entropy methodApplications

What is entropy?

Before we get to know about cross entropy method, first we need to understand what is entropy. Entropy is defined as the level of 'surprise' in the variable's possible outcome.

Let us now talk about entropy and surprise in detail. Say we have a bag of 12 balls out of which 11...

 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 12:52

MapReduce in System Design

In this article, we have explored the idea of MapReduce tool in depth and how it is used in System Design.

Table of contents:

MapReduce OverviewTop 3 Stages of MapReduceAdvantages of MapReduceMapReduce ApplicationsAlternatives and limitationsConclusionMapReduce Overview

Hadoop's MapReduce processing engine processes and computes huge amounts of data. It enables businesses and other organizations to perform calculations in order to:

• Determine the most profitable price for their items.
•...

 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 12:40

Bentley Ottmann Algorithm for Plane Sweeping

Table of ContentsIntroduction to Bentley Ottmann Algorithm for Plane SweepingBinary Search TreePriority QueueAlgorithmImplementationAnalysisOverviewIntroduction to Bentley Ottmann Algorithm for Plane Sweeping

In this article, we shall be discussing the Bentley-Ottmann algorithm for computing a plane sweep. This lists all the intersection points in a set of line segments. The Bentley-Ottman algorithm takes O((n+k)logn) time where k = o(n^2/logn), it makes the algorithm more efficient th...

 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 03:24

Depth Limited Search

In this article, we have explored Depth Limited Search algorithm which is a restricted version of Depth First Search (DFS).

Table of contents:

Introduction to Depth Limited SearchDepth Limited Search AlgorithmStep by Step ExampleImplementationAdvantages of Depth Limited SearchDisadvantages of Depth Limited SearchMeasures of PerformanceComparison of DLS with BFS and DFSConclusionIntroduction to Depth Limited Search

Depth limited search is an uninformed search algorithm which is similar...

 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 03:06

Intro Sort

In this article, we will discuss about the Introspective or Intro sort algorithm which is an efficient Hybrid Sorting Algorithm making use of Quick Sort, Heap Sort and Insertion Sort.

What we will see:-

Introspective Sort AlgorithmQuick sortHeap sortInsertion sortCode for Intro sortAnalysing the Time Complexity forWorst CaseAverage CaseBest CaseAnalysing the Space ComplexityConclusionReferences

Pre-requisites:

Quick SortHeap SortInsertion SortIntrospective SortIntro or I...
 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 02:52

Syntax Directed Definitions

SDDs specify values of attributes by associating the semantic rules of a programming language with the grammar productions. In this article, learn about SDDs, different types of attributes, and how SDDs are evaluated in a parse tree.

Table of contents.Introduction.Inherited and synthesized attributes.Evaluating SDDs at nodes of a parse tree.Examples.Summary.References.Introduction.

A Syntax-directed definition is a context-free grammar with rules and attributes. Attributes are associate...

 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2022 02:45

April 11, 2022

Python script to read email from Gmail

In this article, we have explained the idea of using Python to read an email from Gmail with a complete Python implementation example.

Table Of Contents:

Introduction to the email, and impalib modules, IMAP4 SSL protocol, RFC822 standardGenerate gmail app codeConfig file setupExample in PythonIntroduction to the email, and impalib modules, IMAP4 SSL protocol, RFC822 standard, email headersPython email module

The email package is a library for managing email messages. It is specifically no...

 •  0 comments  •  flag
Share on Twitter
Published on April 11, 2022 11:41