The data structure is a way of storing and organizing data in a computer system. So that we can use the data quickly, which means the information is stored and held in such a way that it can be easily accessed later at any time. Data structures are used widely in almost every aspect of computer science, such as operating systems, compiler design, Artificial intelligence, graphics, etc.

There are two types of data structure:

1. Primitive data structure

2. Non-primitive data structure

Data Structure Tutorial


Primitive data structure

The primitive data structure can be directly controlled by computer commands. That means it is defined by the system and compiler.

There are the following types of Primitive data structure, that is shown in the figure:

1. Integer

2. Character

3. Double

4. Float

5. String

Integer: In the integer, it includes all mathematical values, but it is not include decimal value. It is represented by the int keyword in the program.

Character: The character is used to define a single alphabet in the programming language. It is represented by the char keyword in the program.

String: The group of the character is called a string. It is represented by the string keyword in the program. The string is written with a double quotation mark (“-“). For example: “My name is Bob”.

Float and Double: Float and double is used for real value.

Non-primitive data structure

The Non-primitive data structure cannot be directly controlled by computer commands. The Non-primitive data structure is derived from the primitive data structure.

There are two types of non-primitive data structure:

1. Linear data structure

2. Non-linear data structure

Linear data structure

Linear data structures are those data structures in which data elements are stored and organized in a linear manner, in which one data element is connected to another as a line. For example, array, linked list, queue, stack.

Non-linear data structure

Non-linear data structures are those data structures in which data elements are not organized in a linear manner. In this, a data element can be associated with any other data element. For example, tree and graph.

Data Structure Operations

Various data structure operations are used to process the data in a data structure which is as follows:

  1. Traversing: Visiting each element of the data structure only once is called traversing.
  2. Searching: Finding the location of the record or data in the data structure is called searching.
  3. Inserting: Adding the same type of element to the data structure is called insertion. An element can be added anywhere in the data structure.
  4. Deleting: Removing an element from a data structure is called Deletion. An element can also be removed from anywhere in a data structure.
  5. Sorting: Arranging a record in a logical order in the data structure is called shorting.
  6. Merging: In the data structure, the record is stored in many different files. Adding these different files to a single file is called merging.


An algorithm is a finite number of steps of well-defined instructions for solving a specific problem. The algorithm is used to read any problem and define its solution. Time complexity and space complexity is checked by the algorithm.

Time complexity

The time complexity of an algorithm is the amount of time the algorithm takes to complete its process. Time complexity is calculated by calculating the number of steps performed by the algorithm to complete the execution.

Space complexity

The space complexity of an algorithm is the amount of memory used by the algorithm. Space complexity includes two spaces: Auxiliary space and Input space. The auxiliary space is the temporary space or extra space used during execution by the algorithm. The space complexity of an algorithm is expressed by Big O (O(n)) notation. Many algorithms have inputs that vary in memory size. In this case, the space complexity that is there depends on the size of the input.

Data Structure Index

  1. Data Structure
  2. Asymptotic Notation
  3. Structure and Union
  4. Array
  5. Pointer
  6. Linked list
  7. Type of Linked list
  8. Queue
  9. Stack
  10. Implementation of Stack using array
  11. Implementation of Stack using linked list
  12. Sorting
  13. Insertion sort
  14. Quick sort
  15. Selection sort
  16. Heap sort
  17. Merge sort
  18. Bucket sort
  19. Radix sort
  20. Shell sort
  21. Tree
  22. Spanning tree
  23. Graph
  24. Searching
  25. Breadth first search (BFS)
  26. Depth first search (DFS)