Home Data Structures

# Data Structures

### Introduction to AVL Tree and its properties

AVL tree(Adelson-Velsky and Landis tree named after it's inventor) is a height-balanced Binary Search Tree such that the difference between the height of a...

### NlogN time sorting algorithms

In this post, we are going to discuss all the sorting algorithms with either the best case or worst case or average-case time complexity...

### Bubble Sort Algorithm Tutorial

Bubble Sort is the simplest sorting algorithm that works by repeatedly comparing the adjacent elements and swapping them if they are in the wrong...

### MergeSort – A nlogn time sorting algorithm

MergeSort is a Divide and Conquer based algorithm just like QuickSort, with best and worst-case sorting time complexity nlogn. MergeSort works by repeatedly diving...

### QuickSort Algorithm

Quicksort is a Divide and conquer based algorithm that picks a pivot element from the given array and partition(rearranges) the array in such a...

### Selection Sort Algorithm

Selection sort is an in-place sorting algorithm that works on the notion of finding the minimum element(if sorting in ascending order) or maximum element(if...

### Bitwise Manipulation Tutorial

Bitwise manipulation is a technique to modify a bit of a number to get the desired result. It's a powerful technique to optimize and...

### Introduction to Binary Number – A number system that computer understand

What was the first thing that clicked on your head when you saw the number 101? You will say it is one hundred one(if...

### Dynamic Programming Tutorial and Implementation

Dynamic Programming or DP approach deals with a class of problems that contains lots of repetition. The main idea behind DP is that, if...

### Insert, Search and Delete Operation in BST

We have already discussed the Tree data structure and a Binary Search Tree. So here we are going to discuss insert, search & delete...