An Array is a collection of items stored at contiguous memory locations. The idea is to store the multiple items of the same type together.

A Linked List is a linear data structure, in which the elements are not stored at contiguous memory locations. It consist of nodes where each node contains a data field anda link to the next node in the list.

A Graph is a non-linear data structure consisting of vertices and edges. The vertices are sometimes also reffered to a nodes and the edges are lines or arcs that connect any two nodes in the graph.

A Queue is defined as a linear data structure which is open at both ends and the operations are performed in First In First Out (FIFO) order. The element which is first pushed into order, the operation is first performed on that.

A Tree is a non-linear hierarhical data structure that consists of nodes connected by edges. A node is an entity that contains a key or value and pointers to its child nodes.

Stack is a linear data structure which follows a particular order in which the operations are performed. The order may be LIFO(Last In First Out) or FILO (First In Last Out).

Hash Table is a data structure which stores data in an associative manner. In a hash table, data is stored in an array format, where each data value has its own uniqueindex value.