data structures

Programming languages or concepts
0

data structures

In this tutorial, you will learn about data strucrture and its types.

What are Data Structures?

A data structure is a storage that is used to manage and  store data. This is a way to manage the data on the computer so that it can be accessed and updated efficiently.


Depending on your needs and the project, it is important to choose the right data structure for your project. 


Types of Data Structure

Basically, data structures are divided into two types:


  • Linear data structure
  • Non-linear data structure


Topics:


Array

Linked List

Stack

Queue

Binary Tree

Binary Search Tree

Heap

Hashing

Graph

Matrix

Misc

Advanced Data Structure

Overview:


Overview of Data Structures | Set 1 (Linear Data Structures)

Overview of Data Structures | Set 2 (Binary Tree, BST, Heap and Hash)

Overview of Data Structures | Set 3 (Graph, Trie, Segment Tree and Suffix Tree)

Abstract Data Types

Linked List:


Singly Linked List:


Introduction to Linked List

Linked List vs Array

Linked List Insertion

Linked List Deletion (Deleting a given key)

Linked List Deletion (Deleting a key at given position)

A Programmer’s approach of looking at Array vs. Linked List

Find Length of a Linked List (Iterative and Recursive)

How to write C functions that modify head pointer of a Linked List?

Swap nodes in a linked list without swapping data

Reverse a linked list

Merge two sorted linked lists

Merge Sort for Linked Lists

Reverse a Linked List in groups of given size

Detect and Remove Loop in a Linked List

Add two numbers represented by linked lists | Set 1

Rotate a Linked List

Generic Linked List in C

Circular Linked List:


Circular Linked List Introduction and Applications,

Circular Singly Linked List Insertion<

Circular Linked List Traversal

Split a Circular Linked List into two halves

Sorted insert for circular linked list

Doubly Linked List:


Doubly Linked List Introduction and Insertion

Delete a node in a Doubly Linked List

Reverse a Doubly Linked List

The Great Tree-List Recursion Problem.

QuickSort on Doubly Linked List

Merge Sort for Doubly Linked List

All Articles of Linked List

Quiz on Linked List

Coding Practice on Linked List

Recent Articles on Linked List


Stack:


Introduction to Stack

Infix to Postfix Conversion using Stack

Evaluation of Postfix Expression

Reverse a String using Stack

Implement two stacks in an array

Check for balanced parentheses in an expression

Next Greater Element

Reverse a stack using recursion

Sort a stack using recursion

The Stock Span Problem

Design and Implement Special Stack Data Structure

Implement Stack using Queues

Design a stack with operations on middle element

How to efficiently implement k stacks in a single array?

Sort a stack using recursion

Quiz on Stack

All Articles on Stack

Coding Practice on Stack

Recent Articles on Stack


 


Queue:


Queue Introduction and Array Implementation

Linked List Implementation of Queue

Applications of Queue Data Structure

Priority Queue Introduction

Deque (Introduction and Applications)

Implementation of Deque using circular array

Implement Queue using Stacks

Find the first circular tour that visits all petrol pumps

Maximum of all subarrays of size k

An Interesting Method to Generate Binary Numbers from 1 to n

How to efficiently implement k Queues in a single array?

Quiz on Queue

All Articles on Queue

Coding Practice on Queue

Recent Articles on Queue


 


Binary Tree:


Binary Tree Introduction

Binary Tree Properties

Types of Binary Tree

Handshaking Lemma and Interesting Tree Properties

Enumeration of Binary Tree

Applications of tree data structure

Tree Traversals

BFS vs DFS for Binary Tree

Level Order Tree Traversal

Diameter of a Binary Tree

Inorder Tree Traversal without Recursion

Inorder Tree Traversal without recursion and without stack!

Threaded Binary Tree

Maximum Depth or Height of a Tree

If you are given two traversal sequences, can you construct the binary tree?

Clone a Binary Tree with Random Pointers

Construct Tree from given Inorder and Preorder traversals

Maximum width of a binary tree

Print nodes at k distance from root

Print Ancestors of a given node in Binary Tree

Check if a binary tree is subtree of another binary tree

Connect nodes at same level

Quiz on Binary Tree

Quiz on Binary Tree Traversals

All articles on Binary Tree

Coding Practice on Binary Tree

Recent Articles on Tree


Binary Search Tree:


Search and Insert in BST

Deletion from BST

Minimum value in a Binary Search Tree

Inorder predecessor and successor for a given key in BST

Check if a binary tree is BST or not

Lowest Common Ancestor in a Binary Search Tree.

Inorder Successor in Binary Search Tree

Find k-th smallest element in BST (Order Statistics in BST)

Merge two BSTs with limited extra space

Two nodes of a BST are swapped, correct the BST

Floor and Ceil from a BST

In-place conversion of Sorted DLL to Balanced BST

Find a pair with given sum in a Balanced BST

Total number of possible Binary Search Trees with n keys

Merge Two Balanced Binary Search Trees

Binary Tree to Binary Search Tree Conversion

Quiz on Binary Search Trees

Quiz on Balanced Binary Search Trees

All Articles on Binary Search Tree

Coding Practice on Binary Search Tree

Recent Articles on BST


Heap:


Binary Heap

Why is Binary Heap Preferred over BST for Priority Queue?

Binomial Heap

Fibonacci Heap

Heap Sort

K’th Largest Element in an array

Sort an almost sorted array/

Tournament Tree (Winner Tree) and Binary Heap

All Articles on Heap

Quiz on Heap

Coding Practice on Heap

Recent Articles on Heap



Hashing:


Hashing Introduction

Separate Chaining for Collision Handling

Open Addressing for Collision Handling

Print a Binary Tree in Vertical Order

Find whether an array is subset of another array

Union and Intersection of two Linked Lists

Find a pair with given sum

Check if a given array contains duplicate elements within k distance from each other

Find Itinerary from a given list of tickets

Find number of Employees Under every Employee

Quiz on Hashing

All Articles on Hashing

Coding Practice on Hashing

Recent Articles on Hashing


 


Graph:


Introduction, DFS and BFS:


Graph and its representations

Breadth First Traversal for a Graph

Depth First Traversal for a Graph

Applications of Depth First Search

Applications of Breadth First Traversal

Detect Cycle in a Directed Graph

Detect Cycle in a an Undirected Graph

Detect cycle in an undirected graph

Longest Path in a Directed Acyclic Graph

Topological Sorting

Check whether a given graph is Bipartite or not

Snake and Ladder Problem

Minimize Cash Flow among a given set of friends who have borrowed money from each other

Boggle (Find all possible words in a board of characters)

Assign directions to edges so that the directed graph remains acyclic

Post a Comment

0Comments

Post a Comment (0)
close