20CS322 Data Structures Lab Experiments
20CS322 Data Structures Lab Experiments
1. Develop a program to implement a singly linked list and perform operations such as
insertion, deletion, and traversal.
2. Construct a program to implement a doubly linked list and demonstrate its
functionality for insertion, deletion, and traversal in both directions.
3. Create a program to perform polynomial manipulation using a linked list, including
addition, subtraction, and multiplication of polynomials.
4. Implement stack and queue data structures using arrays and demonstrate their
applications in real-world scenarios.
5. Develop a program to implement stack and queue using linked lists and apply them to
a practical use case.
6. Create a program that applies stack operations to convert an infix expression to
postfix and evaluate the postfix expression using an array-based stack
implementation.
7. Design a queue-based application, such as task scheduling or customer service
simulation, and demonstrate its implementation.
8. Build an expression tree for a given arithmetic expression and traverse it in preorder,
postorder, and inorder sequences.
9. Demonstrate a binary search tree and demonstrate its functionality by performing
insertion, deletion, and searching operations.
10. Construct an AVL tree to maintain balance during insertion and deletion, and
evaluate its efficiency for search operations.
11. Implement graph traversal algorithms such as depth-first search (DFS) and a
minimum spanning tree (MST) using Prim’s algorithm and demonstrate their
applications.
12. Write a programs to apply the insertion sort and merge sort algorithms to arrange a
list of integers in ascending order and compare their performance.
13. Develop a hashing-based program to store and retrieve data efficiently, demonstrating
collision handling using techniques like chaining or open addressing.