Algorithms and Data Structures For Big Data (BDA 5101)
Algorithms and Data Structures For Big Data (BDA 5101)
1) Define Data structure, algorithm and program. List and explain the criteria to be satisfied by (10)
algorithms. (TLO 1.1) (4 + 6 marks)
2) Design python class for Limited Stack with necessary methods. Write test cases to test each (10)
functionalities. (TLO 2.2) (7+3 marks)
3) Implement FlexiQueue class in python with required methods. Provide method to expand and (10)
shrink the size of Queue based on elements in the Queue. (TLO 2.3)
4) Design class for Single linked list. Data need to be stored are Product ID, Product Name and (10)
Product Price. Provide methods to add node at head, delete node at tail and Check Product based
on Product ID. (TLO 2.1)
5) Design python class for Binary Search Tree. Data to be stored are student marks. Write methods to (10)
add data into BST, search data and find the height of BST. (TLO 2.4)
6) Implement selection sort and insertion sort in python. Compare the time complexity for both (10)
technique. (TLO 3.1) (5+5 marks)
7) Define Hashing. Explain different types of Hash Tables. Provide various types of collision resolution (10)
techniques. (TLO 3.2) (2+4+4 marks)
8) Define the terms, directed graph, undirected graph, path, complete graph and connected graph. (10)
Assume that graph has six vertices and construct adjacency list for that graph. Select any node as
starting node and give depth first search and breadth first search for that graph. (TLO 3.3) (6+4
marks)
9) List the different ways of implementing priority queue. State the worst case time for each method. (10)
Show all the steps for building MaxHeap for following elements. 54, 65, 21, 90, 75, 80, 12, 35, 42
and 60. (TLO 3.2) (5+5 marks)
10) Design Special_Stack class which uses Queue data structure to store data. It is assumed that (10)
Queue data structure is already implemented with required methods and data members. Implement
Special_Stack using an instance variable of Queue, and only constant additional local variable
within methods of Special_stack. Write methods push() and pop() for Special_Stack using methods
of Queue class. (6+4 marks) (TLO 2.2).
-----End-----
Page 1 of 1