Showing posts with label Data Structures. Show all posts
Showing posts with label Data Structures. Show all posts

Sunday, 2 May 2021

CS8391 Data Structures Anna University Questions Answers April May 2019

CS8391 Data structures exam questions and answers April May 2019, Anna University CS8391 questions, Data structures university exam solved question paper, CS8391 Data Structures CSE/IT/CCE answers, CS8391 Data structures regulation 2017

 

Exam

B.E/B.Tech. (Full Time) DEGREE END SEMESTER EXAMINATIONS

Academic Year

April May 2019

Subject Code

CS8391

Subject Name

Data Structures

Branch

Computer Science and Engineering / Information Technology / Computer and Communication Engineering

Semester

Third Semester

Regulation

2017

 

B.E / B.Tech. (Full Time) DEGREE END SEMESTER EXAMINATIONS, APRIL / MAY 2019

CSE / IT / CCE

Third Semester

CS8391 – Data Structures

(Regulation 2017)

Time : 3 Hours                      Answer A L L Questions                Max. Marks 100

PART-A (10 x 2 = 20 Marks)

 

1. What are the advantages of Linked List over arrays?

Answer:

  • Linked list is dynamic data structure whereas array is static. It means, linked list can grow during programs execution whereas array cannot. The array size is fixed
  • Insertion and deletion can take place in any place of linked list easily. This cannot be the case for array where insertion in a particular place may need to move many other existing elements, and deletion is not possible.

2. Illustrate the differences between Linear linked list and Circular linked list.

Answer:

  • In linear linked list, there is a last node and that will be pointing to NULL. In circular linked list, there is no last node. Actually the last node is connected to the first node hence form a chain.
  • You can visit the previous nodes using the chain in circular linked list, whereas you cannot visit the previous nodes in linear linked list.

3. Convert the following infix expression to postfix expression using Stack a+b*c+(d re+f)/g.

4. A priority queue is implemented as a Max- Heap. Initially it has 5 elements. The level order traversal of the heap is : 10, 8, 5, 3, 2. Two new elements 11 and 7 are inserted into the heap in that order. Give the level order traversal of the heap after the insertion of elements.

5. How to resolve null links in a binary tree?

Answer:

The NULL links in a binary tree of N nodes will be N+1. 

Proof: The proof of the claim is by induction on N.

Basis step:  N=1.  The tree has one node and two NULL links as children.

Induction step: Suppose the claim is true for all 1 <= m <= N, N >= 1.  Then consider any (N+1)-node binary tree T.  It has q NULL links.  If we remove one leaf from T, then the resulting binary tree T' has two fewer NULL links (from the     removed leaf), but its parent now has a NULL link it did not have in T.  So, T has q-2+1 = q-1 NULL links as children.

 

T' has N nodes, so by the induction hypothesis, T' has N+1 NULL links as children.  Therefore, q-1 = N+1, and so q = (N+1)+1.  Thus, every (N+1)-node binary tree has N+2 NULL links as children.

 

6. The depth of complete binary tree is 8 and compute the number of nodes in leaf.

Answer:

A complete binary tree is a proper binary tree where all leaves have the same depth. In a complete binary tree, the number of nodes at depth d is 2d. The number of leaf nodes in a complete binary tree of depth 8 is 28 which is 256.

7. What is Bi-connectivity?

8. Given a weighted, undirected graph with |V| nodes, Assume all weights are non-negative. If each edge has weight <=w, What can you say about the cost of Minimum spanning tree?

9. Brief about Extendible hashing.

10. Compare linear search and Binary search.

 

PART B — (5 * 13 = 65 marks)

 

11. (a) i) Write a program to merge two sorted linked list (P & Q – assume that they are available) to get a single sorted list S.

Eg. P:1->2->45->56

Q: 3->24->56->63->66, (8)

ii) Write a non-recursive procedure to reverse a singly linked list. (5)

Or

(b) i) Write a function to add two polynomials represented by linked representation. Apply the function for the following input.

A= 3x14 + 2x18 +1, B= 8x12+ 3x10 + 3x8 +10x6 (9)

ii) Write a function to delete the node n from the given doubly linked list. (4)

p↔q↔r↔n↔s↔t↔z↔.

 

12. (a) Write algorithms to check if the given parenthesized arithmetic expression contains balanced parenthesis and to convert such expression to postfix form and evaluate it, Illustrate with example. (13)

Or

(b) i) State the advantage of Circular queue over linear queue, Write the functions for Insertion in a circular queue. (5)

ii) Build the max heap for the following 90, 150, 70, 40, 100, 20, 30, 10, 110. And show the result of delete max. (8)

 

13. (a) i) Write a routine for Post order traversal. Is it possible to find minimum and maximum value in the binary search tree using traversals? Discuss. (3)

ii) Display the given tree (Figure 13. a) using Inorder, Preorder and Postorder Traversals. (6)

 

ii) Delete 11 and 10 from the above binary search tree. And display the tree after each deletion. (4)

Or

(b) i) Write a routine for AVL tree insertion. Insert the following elements in the empty tree and how do you balance the tree after each element insertion?

Elements : 2, 5, 4, 6, 7,9, 8, 3,1, 10. (8)

ii) Brief about B+ Tree. And discuss the applications of heap. (5)

 

14. (a) Apply an appropriate algorithm to find the shortest path from ‘A’ to every other node of A. For the given graph Fig. 14(a) (13)

 


 Or

(b) i) Explain in detail about strongly connected components and illustrate with an example. (7)

ii) Find an Euler path or an Euler circuit using DFS for the following graph Fig. 14(b). (6)


Fig. 14(b)

 

15. (a) Consider a hash table with 9 slots. The hash function is h(k) =k mod 9. The following keys are inserted in the order 5, 28, 19, 15, 20, 33, 12, 17, 10. Draw the contents of the hash table when the collisions are resolved by

i) Chaining

ii) Linear probing

iii) Double hashing. The second hash function h2(x) = 7-(x mod 7) — (13)

Or

(b) i) Write a function to perform merge sort. Give example (6)

ii) Write a routine for Insertion sort. Sort the following sequence using Insertion sort. 3, 10, 4, 2, 8, 6,5, 1.                    (7)

 

PART C — (1 * 15 = 15 marks)

16. (a) i) Indicate whether you use an Array, Linked List or Hash Table to store data in each of the following cases. Justify your answer. (6)

(1) A list of employee records needs to be stored in a manner that it is easy to find max or min in the list.

(2) A library needs to maintain books by their ISBN number. Only thing important is finding them as soon as possible.

(3) A data set needs to be maintained in order to find the median of the set quickly.

ii) Define data abstraction. Write the ADT for the data structure in which the same condition can used appropriately, for checking over flow and underflow. Define all basic function of this ADT. (9)

Or

(b) i) When do you perform rehashing? [Illustrate with example. (8)

ii) From the Figure 16. (b), in what order are the vertices visited using DFS and BFS starting from vertex A? Where a choice exists, use alphabetical order. (7)

 


Figure 16. (b)

 

*************

 

 

 

CS8391 Data Structures Anna University Questions Answers Nov Dec 2018

CS8391 Data structures exam questions and answers November December 2018, Anna University CS8391 questions, Data structures university exam solved question paper, CS8391 Data Structures CSE/IT/CCE answers, CS8391 Data structures regulation 2017

 

Exam

B.E/B.Tech. (Full Time) DEGREE END SEMESTER EXAMINATIONS

Academic Year

November December 2018

Subject Code

CS8391

Subject Name

Data Structures

Branch

Computer Science and Engineering / Information Technology / Computer and Communication Engineering

Semester

Third Semester

Regulation

2017

 

B.E / B.Tech. (Full Time) DEGREE END SEMESTER EXAMINATIONS, NOVEMBER / DECEMBER 2018

CSE / IT / CCE

Third Semester

CS8391 – Data Structures

(Regulation 2017)

Time : 3 Hours                      Answer A L L Questions                Max. Marks 100

PART-A (10 x 2 = 20 Marks)

 

1. State the advantage of ADT.

Answer:

Abstraction: the user of a type does not need to know or understand any implementation details of the type, which reduces the complexity of the programming task.

Implementations of ADTs can be changed (e.g., for efficiency) without requiring changes to the program that uses the ADTs.

Code is easier to understand (e.g., it is easier to see "high-level" steps being performed, not obscured by low-level code).

Reusability: ADTs can be reused in other programs.

 

2. What are the disadvantages of linked list over array?

Answer:

  • Array implementation is simple whereas the linked list is little bit complex
  • Wastage of memory space (data+pointer) in linked list. Space for pointer is not required in the case of array.
  • Random access in not possible in linked list. In array we can access the required data using its storage index.

 

3. What are the applications of stacks?

Answer:

  • Check for parenthesis mismatch
  • Evaluation of expressions
  • Conversion of expressions into the other form (infix to postfix, prefix)
  • Memory management
  • Backtracking problems

 

4. What are priority queues? What are the ways to implement priority queue?

5. For the tree in Figure 1.

(a) List the siblings for node E.

Answer: Siblings are nodes that are at the same level and have the same parent. Node D is the sibling of node E.

(b) Compute the height.

Answer: The height of a binary tree is equal to the largest number of the edges from the root to the most distant leaf node. Height of the given tree is 4 (the path A->B->E->J->L or A->B->E->J->M)


6. Show the result of in-order traversal of the binary search tree given in Figure 2.

Answer: Steps of In-order traversal

Visit the left sub-tree using in-order

Visit the root

Visit the right sub-tree using in-order

In-order traversal of the given binary tree: 1 2 3 4 5 6 7 9


7. What are the representations of the graphs?

Answer:

Two common ways to represent graphs on a computer are as an adjacency list or as an adjacency matrix. 

 

8. Define Euler circuits. 

Answer:

An Euler circuit is a circuit that uses every edge of a graph exactly once.


9. What are the advantage and disadvantage of separate chaining and linear probing?

Answer:

 

Advantages

Disadvantages

Linear probing

Easy to implement; always finds a location if there is one; very good average-case performance when the table is not very full

“clusters” of keys form in adjacent slots in the table; when these clusters fill most of the array, performance deteriorates

Separate Chaining

Very Easy to implement

Memory Inefficient – requires a secondary data structure to store collisions

Long Chains will produce Linear search times

 

10. State the complexity of binary search.

Answer:

Average case complexity : O(log n)

Worst case complexity : O(log n)

 

PART B — (5 x 138 = 65 marks)

 

11. (a) i) State the polynomial representation for 6x3+9x2+7x+1 using linked list. Write procedure to add and multiply two polynomials and explain with suitable example. (7)

ii) What are the ways to insert a node in linked list? Write an algorithm for inserting a node before a given node in a linked list. (6)

Or

(b) i) What are the various operations on array? Write a procedure to insert an element in the middle of the array. (7)

ii) Write a procedure to deleting the last node from a circular linked list. (6)

 

12. (a) Write the procedure to convert the infix expression to postfix expression and steps involved in evaluating the postfix expression. Convert the expression A-(B/C+ (D% E*F)/G*H to postfix form. Evaluate the given postfix expression 9 3 4 * 8 + 4 / -.

Or

(b) What are circular queues? Write the procedure to insert an element to circular queue and delete an element from a circular queue using array implementation.

 

13. (a) Write the following routines to implement the basic binary search tree operations.

i) Perform search operation in binary Search Tree.

ii) Find_min and Find_max.

Or

(b) Distinguish between B Tree and B+ tree. Create a B tree of order 5 by inserting the following elements: 3, 14, 7, 1, 8, 5, 11, 17, 13, 6, 23, 12, 20, 26, 4, 16, 18, 24, 25, and 19.

 

14. (a) Distinguish between breadth first search and depth first search with example.

Or

(b) State and explain topological sort with suitable example.

 

15. (a) (i) State and explain the shell sort. State and explain the algorithm for shell sort. Sort the elements using shell sort. (7)

ii) Explain Open Addressing in detail. (6)

Or

(b) i) Distinguish between linear search and binary search. State and explain the algorithms for both the search with example. (7)

ii) Explain Rehashing and extendible hashing. (6)

 

PART C — (1 x 15 = 15 marks)

 

16. (a) What are expression Trees. Write the procedure for constructing an expression Tree.

Or

(b) Given input {4371, 1323, 6173, 4199, 4344, 9679, 1989} and a hash function h(x) = x(mod10), show the resulting .

(i) open hash table

(ii) closed hash table using linear probing

(iii) closed hash table using quadratic probing

(iv) closed.

 

*************

 

 

 

Database Management Systems Anna University Exam Questions and Answers

Database management systems university question papers with answers, Anna university DBMS exam questions, Solved university exam questions f...