# Types of Data Structures in Computer Science and Their Applications

Data structures are widely used in computer science for storage of data. They refer to the allocation and storage of data in varied ways. This Techspirited post gives you an overview of the different types of data structures used in computer science, and their various applications.

Techspirited Staff

Last Updated: Mar 19, 2018

Queue Vs. Stack

Although both queue and stack perform the same operation of data storage, they vary in terms of their data storage and deletion policies. The stack follows the LIFO (Last In First Out) pattern, which deletes data that has been in it for the shortest duration of time. Whereas, queue follows the FIFO (First In First Out) pattern, which defines the deletion of data that was stored first.

Different Types of Data Structures in Computer Science

**Applications:**Implementation of other data structures, Execution of matrices and vectors, Dynamic memory allocation, Pointer container, Control tables

**Applications:**Evaluation of expressions, Backtracking, Runtime memory management, Arrangement of books in a library

**Applications:**Disk scheduling, CPU scheduling, File IO, Data transmission

**Applications:**Representation of sparse matrices, Non-contiguous data storage, Implementation of non-binary tree or other data structures, Dynamic memory management, Equalizing parenthesis, Symbol tables

Another variation is the dynamic set which allows addition or deletion of elements to the set.

**Applications:**Mapping of data, Common data storage

**Applications:**Computer networking, Problem solutions involving 'Depth-First' search or 'Breadth-First' search algorithms, Representation of matrices, Study of molecular interactions in Chemistry

**Applications:**Representation of data lists, Quickly accessible data storage, Representation of hierarchal data, Routing of algorithms

assigned to the same bucket by the hash function of the table.

**Applications:**Unique data representation, Implementation of caches, Array association, Locating entries in a table, Representation of objects, Database indexing

**Applications:**Implementation of computer programs, Data comparison, Storage of data having varying data types