In this tutorial, we will discuss about data structures from the basics. We will understand the different types of data structures and their uses and how we can implement them.
What is data structure?
A data structure is a collection of data that can be stored in an organised manner so that the data can be accessed, modified efficiently.
Data Structures usages
- Data structures are used in different kinds of applications like relational databases, which use B-tree indexes to retrieve the data.
- Hash table is used in compiler design.
- These are used in different algorithms like searching, sorting.
- Internet indexing service uses data structures.
Types of the Data structures
Types of DS | Sub type |
Linear | Array |
Linked List | |
Stack | |
Queue | |
Tree | Binary Tree |
Binary Search Tree | |
Heap | |
Hashing | Hash Table |
Hash Tree | |
Graph | Decision Graph |
Directed graph | |
Matrix |
What is Linear data structure ?
A linear data structure is a type of data structure where data can be traversed sequentially. Array, Linked list, stack, queue are examples of linear data structure. Please go through below image for the details:
What is Tree Data Structure
A tree data structure is a hierarchical data structure. It has nodes that are connected by edges.Please go through below image for the details:
What is hashing
Hashing is a data structure which uses a hash function to map the data in a key-value pair to retrieve the data faster. Examples of Hashing are Hash table, Hash tree. Please go through below image for the details:
What is graph
A Graph is a non-linear, pictorial representation of data consisting of edges and vertices. Please go through below image for the details:
Difference between linear and non-linear data structure
Sl No | Key points | Linear data structure | Non-linear data structure |
1 | Data alignment | Data gets stored sequentially | Data gets stored in hierarchy form |
2 | Levels | Single level involved | Multiple level involved |
3 | Complexity | Easy to implement | Implementation is complex |
4 | Traversal | Data can be traversed in single run | Data cannot be traversed in a single run rather need multiple runs |
5 | Utilisation of memory | Not efficient | Efficient |
6 | Examples | Array, Linked list, stack, queue | Graph, tree |
7 | Application | Used in software development | Used in Image Processing, Voice Processing, Artificial Intelligence |
Some import Questions and Answers on Data Structure
Qn 1. What do you mean by ADT in Data structure?
Ans: ADT means Abstract Data type. Class or Objects are an example of ADT. When We use and Class or Object, we define the behavior by a set of values and a set of operations. ADT only tells us what operation has to perform. It does not tell us how the operation has been internally implemented.
For Example :
- List
- size() -> Size gives us the number of elements, but it does not show how internally it calculates to give the result.
- insert(x) -> insert helps us to insert the element but does not tell how the logic is written.
- remove(x) -> Similarly remove method is used to remove the elements without telling the implementation.
- get(i) -> get is used to access the elements.
Qn 2. What are the advantages of data structure?
- Ans:
- Using Data Structure, we can efficiently store data in a storage device.
- Data structure gives an easy option to retrieve the data from a storage device.
- It can process small as well as large numbers of data efficiently
- Using data structures like graph we can solve real-life problems
- Database systems uses indexing using a hash table and array to retrieve the data efficiently.
Qn 3. What is primitive data structure?
Ans: Primitive data structures are system-defined data types supported by different programming languages. Example: int, double, float, boolean, character.
Qn 4. What is a Complex Data structure?
Ans: Data structures like Hash table, Tree, Heap, Graph are called a complex data structure. The implementation of these data structures is complex in nature.
Qn 5. What are the two main types of data structure?
Ans: Mainly, data structures are divided into two parts:
- Linear Data structure: Stack, Queue, Array, Linked List
- Non-linear Data Structure: Tree, Graph
Conclusion
Till now, We have covered the basics of Data Structure. In the next topic, we will write about the Array. For more details for this section, please refer to this link.
Hi, I am Himadri Das, I am a blogger, and an open source contributor. I have about 11 years of experience in the Information Technology domain. Currently I am working in a Startup Company as Quality Assurance Manager. I have hands-on experience on Appium, Selenium, QTP, Locust, Automation framework, Performance Testing, Functional Testing, Java, python, Shell scripting, MySql, Redis, Kafka etc. Apart from my work and writing blogs, I love to play guitar, love to travel and love to watch cricket and football. If you want to know more about me, please visit my linkedin profile .