AfterAcademy Tech
•
19 Jan 2020

Data structures are the ways of organizing and storing data in a computer so that we can perform several operations efficiently on it. It is widely used in every aspect of computer science. Some examples of commonly used techniques to organize data are:
Data structures are primarily categorized into two parts:

These are the predefined way of storing data in the system. All sets of operations are pre-defined. Char, int, float, double are examples of primitive data structures.
The data structures which are designed using primitive data structures are called non-primitive data structures. They are used to store a collection of data. It can be categorized into two parts:
Linear Data Structure
Data structures in which elements are arranged sequentially or linearly and linked one after another are called linear data structures.
Properties:
Arrays
An array is a collection of items stored at contiguous memory locations. The idea is to store multiple items of the same type together.

Stacks
The stack is a data structure following the LIFO(Last In, First Out) principle.

Queues
The queue is a data structure following the FIFO(First In, First Out) principle.

Linked List
A linked list is a dynamic data structure. The number of nodes in a list is not fixed and can grow and shrink on demand.

Non-Linear Data Structure
Data structures in which elements are not arranged sequentially are called non-linear data structures.
Properties:
Trees
A tree is a hierarchical data structure that stores the information naturally in a hierarchical style.

Graphs
A graph is a set of objects where some pairs of objects are connected by links. The interconnected objects are represented by points termed as vertices, and the links that connect the vertices are called edges.

We can also classify the data structures based on their representation:
Sequential Representation
Here we allocate a contiguous slot of the memory. This includes the following structures:
Linked Representation
Here we allocate a distinct chunk of the memory connected via pointers or references. This includes the following structures:
In algorithms, the given data set can change over time i.e. it can grow and shrink during the manipulation. So, we refer such collection of data as a dynamic set. The operation on each dynamic set can be categorized into two parts:
We can also categories the dynamic set into three categories:
Containers
Dictionaries

Priority Queues

Note: Certain dictionary data structure like BST support other useful operations like:
Data structures are very important for interviews. To see more about how to prepare data structures for interviews, go to this link
Happy coding! Enjoy Algorithms.
AfterAcademy Tech
Heap is a very useful data structure that every programmer should know well. The heap data structure is used in Heap Sort, Priority Queues. The understanding of heaps helps us to know about memory management. In this blog, we will discuss the structure, properties, and array implementation of heaps.

AfterAcademy Tech
Tree is a widely-used powerful data structure that is a viable addition to a programmer’s toolkit. We shall be discussing the types and properties of trees in this blog.

AfterAcademy Tech
The idea of this blog is to discuss the famous data structure called Array. An Array is one of the important data structures that are asked in the interviews. So, we will learn about arrays and we will also discuss about the idea of the dynamic array and its amortized analysis. So let's get started.

AfterAcademy Tech
In this blog, we will learn about the Graph data structure that is used to store data in the form of vertices and edges. We will also see some of the properties, types, representation of graph.
