DATA STRUCTURE Model Question Paper
DATA STRUCTURE Model Question Paper
III Semester
PART – A
(10 x 2 = 20 Marks)
1. Take a linear search algorithms and discuss best-case time analysis.
2. Explain the basic of the Markov algorithm and discuss two ways in which such an
algorithm terminates.
6. Discuss the basis of the Buddy system of allocation. What type of fragmentation
still exists?
8. What are the two broad classes of collision resolution techniques? Explain.
10. Explain how the size of a hashing table could be decreased when using (a) linear
hashing, (b) dynamic hashing.
PART – B
(5 x 16 = 80 Marks)
11. i) Implement typical stack operation when stacks are represented using (1) arrays
and (ii) using singly linked lists. (8 Marks)
ii) Define a binary tree. (2 Marks)
iii) Give the iterative algorithm for the inorder traversal of a binary tree. (6 Marks)
12a. i) Design a string manipulation algorithm for duplicating a given character string N
times. (6 Marks)
ii) Design an algorithm which trims off all the trailing blanks of a character string.
(5 Marks)
iii) Give a procedure that uses a stack in order to reverse the elements of a circular
queue which is stored in an array. (5 Marks)
(OR)
12b. i) Given as input a word form assigned to the variable WORD, derive function
ORD-SEARCH which searches the ordered array of words looking for the word
form. If the word form is present, its index location is returned, else zero is
returned. Any search procedure can be used. (6 Marks)
Thus to access the front of the queue representing priority 2, one merely starts at
PRIORITY_F[2]. This representation allows each queue to be of different length.
Given this representation, devise algorithms to insert and delete from a priority
queue. (10 Marks)
13a. i) Give an algorithm to reverse the elements of a single linked lists without using a
temporary list. (6 Marks)
ii) Write algorithms to insert into and delete elements from a doubly linked list.
(6 Marks)
iii) Write an algorithms to count the number of nodes in a given singly linked list.
(4 Marks)
(OR)
13b. i) Write algorithms to allocate and free nodes in a body system of memory
allocation. (10 Marks)
ii) Write an algorithm to add two polynomials when the polynomials are represented
using singly linked lists. (6 Marks)
14a. i) Give the best case and worst case analysis of the binary search. (8 Marks)
14b. i) Write an algorithm to delete a node from a binary search tree. (8 Marks)
15a. i) Give in detail the structure of a typical Indexed Sequential file. (8 Marks)
ii) Describe the direct file organization and give the procedure to retrieve a record
from a direct file given the key. (8 Marks)
(OR)
CS 1151 DATASTRUCTURES
1. Define ADT.
2. How do you push and pop elements in a linked stack?
3. Prove that the number of odd degree vertices in a connected graph should be even.
4. Define NP hard and NP complete.
5. Define binary search tree.
6. List out and define the performance measures of an algorithm.
7. What is Recursion? Explain with an example.
8. List out the various techniques of hashing.
9. What is the worst case complexity of Quick sort?
10. State the algorithmic technique used in merge sort.
PART B (5 * 16 = 80 Marks)
11.(a) Derive the best, average, worst case time complexity of a linear search.
Or
(b) (i) Develop an algorithm for binary search. Validate the algorithm with a suitable data set.
(10)
(ii) What is Top down approach? Explain. (6)
12. (a) Write ADT operations for array implementation of polynomial addition.
Or
13. (a) Write insertion algorithm for AVL tree. Write suitable rotation algorithms.
Or
14. (a) Write ADT operations for heap sort. Using the above algorithm sort the following:
35 45 25 11 6 85 17 35
Or
(b) (i) Explain the quick sort algorithm. ( 8 )
(ii) Explain external sorting. Give relevant example. ( 8 )
15. (a) Explain Dijkstra’s algorithm using the following graph. Find the shortest path between
v1, v2, v3, v4, v6 and v7.
[Diagram not available]
Or