Data Structures & Algorithms Concepts

Prepare yourself for tech interview by learning Data Structures and Algorithms Concepts

Complexity Analysis

Complexity analysis is a technique to characterise the time taken by an algorithm with respect to input size (independent from the machine, language and compiler).

START
Iteration and Two Pointer Approach

Iteration is a fundamental programming idea that is commonly used in writing programs.

START
Recursion and Divide & Conquer Approach

Recursive thinking is an important art in programming which helps you to formulate the solution of a problem via the solution of its smaller subproblems.

START
Array and Linked-List

Array and Linked list are used to store linear data of similar type but the major difference between them is related to their structure.

START
Stack and Queue

Stack and Queue are linear data structure that follows the LIFO (Last In First Out) and FIFO (First In First Out) principle respectively.

START
Binary Tree

A binary tree is a tree data structure in which each node has at most two children, which are referred to as the left child and the right child.

START
Binary Search Tree

Binary Search Tree combine the efficiency of insertion of a Linked List and the quick search of a sorted array.

START
Heap and Priority Queue

A Heap is an array implementation of complete binary tree where each node satisfy the heap-property.

START
Hash Table

Hash Table is an important Data Structure which is used to map a given value with a particular key for faster access of elements.

START
Dynamic Programming

Dynamic Programming solves the problem by breaking down into smaller sub-problems, and storing the solution to each sub-problem so that each sub-problem is only solved once.

START
Greedy Algorithms

A greedy algorithm is a simple, intuitive algorithm that is used in optimisation problems.

START
Backtracking

Backtracking solves problems recursively by building a solution incrementally, one piece at a time and removing those solutions that fail to satisfy the constraints of the problem at any point of time.

START
Graph

Graphs are used to represent, find, analyse, and optimise connections between elements like locations, users etc.

START
Advanced Data Structure and Miscellaneous topics

This page will contain some of the advanced Data Structures and algorithms like B-tree, AVL Tree, Augmentation, String Matching, Sorting in linear time and Randomized Algorithms.

START

Connect With Your Mentors

/assets/ali.jpg
Janishar Ali
Founder | IIT-BHU | 10 Yrs Exp.
/assets/amit.jpg
Amit Shekhar
Founder | IIT-BHU | 10 Yrs Exp.