Home Data Structures

# Data Structures

### Array in C/CPP Programming Langauages with Example

An array in C or CPP is a collection of elements with similar data types stored in a contiguous memory location. The elements of...

### Rabin-Karp Algorithm for String Searching & Pattern Matching

Rabin-Karp is a pattern-matching algorithm that works by calculating the hash of the pattern to be searched(say Length M) and the hash of M...

### Distance, Diameter, Eccentricity, Radius and Center of a Graph

A graph is defined as a set of Vertices and lines joining these vertices known as Edges.  Today we will learn about various properties...

### HeapSort Algorithm Tutorial and Implementation

HeapSort is an efficient (O(N*lognN) time) comparison-based sorting algorithm based on Binary Heaps. It works by dividing input unsorted array into the sorted and...

### Build Heap and Heapify Operation [Tutorial]

Build Heap is a process of building a Heap from a given element generally in an array format. The resulting heap will be either...

### Binary Heap Data Structure [Introduction]

A Binary Heap is a form of Binary Tree with the following additional properties - A Binary Heap is a complete Binary tree with...

### Check if a Binary Tree is a Binary Search Tree

Given a Binary Tree, we have to validate whether it is a valid Binary Search Tree(BST) or not. Print true, if given Binary Tree...

### Sieve of Eratosthenes

Sieve of Eratosthenes is an algorithm to find all prime numbers up to a given range. This concept is very important when it comes...

### AVL Tree Deletion Tutorial

AVL tree is a height-balanced Binary Search Tree(BST) with best and worst-case height as O(log N). In AVL tree the difference of height of...

### AVL Tree Insertion Tutorial

AVL tree is a height-balanced Binary Search Tree(BST) with best and worst-case height as O(log N). In AVL tree the difference of height of...