Data Strucure Laboratorys

First Lab

Write a program to implement a heap data structure and perform basic operations such as inserting and deleting elements, and building a heap from a given array of elements. You could try implementing both a min heap and a max heap and compare the performance of the two

Second Lab

Implement a set data structure and write functions to add, remove, and check for the presence of elements in the set. You could try implementing this using different underlying data structures such as a hash table or a balanced binary search tree and compare the performance of the different implementations

Third Lab

Implement a stack or queue data structure and write functions to push, pop, enqueue, and dequeue elements. You could also try implementing more advanced stack or queue data structures such as a priority queue or a deque.

Fourth Lab

Write a program to implement a graph data structure and perform basic operations such as adding and removing nodes and edges, and performing breadth-first or depth-first traversal.

Fifth Lab

Implement a hash table data structure and write functions to insert, delete, and search for elements in the hash table. You could also try experimenting with different collision resolution strategies such as linear probing or chaining.