FINALTERM EXAMINATION
Spring 2010
CS301- Data Structures
Time: 90 min
Marks: 58
Question No: 1 ( Marks: 1 ) – Please choose one
A solution is said to be efficient if it solves the problem within its resource constraints i.e. hardware and time.
► True
► False
Question No: 2 ( Marks: 1 ) – Please choose one
Which one of the following is known as “Last-In, First-Out” or LIFO Data Structure?
► Linked List
► Stack
► Queue
► Tree
Question No: 3 ( Marks: 1 ) – Please choose one
What will be postfix expression of the following infix expression?
Infix Expression : a+b*c-d
► ab+c*d-
► abc*+d-
► abc+*d-
► abcd+*-
Question No: 4 ( Marks: 1 ) – Please choose one
For compiler a postfix expression is easier to evaluate than infix expression?
► True
► False
Question No: 5 ( Marks: 1 ) – Please choose one
Consider the following pseudo code
declare a stack of characters
while ( there are more characters in the word to read )
{
read a character
push the character on the stack
}
while ( the stack is not empty )
{
pop a character off the stack
write the character to the screen
}
What is written to the screen for the input “apples”?
► selpa
► selppa
► apples
► aaappppplleess
Question No: 6 ( Marks: 1 ) – Please choose one
Consider the following function:
void test_a(int n)
{
cout << n << ” “;
if (n>0)
test_a(n-2);
}
What is printed by the call test_a(4)?
► 4 2
► 0 2 4
► 0 2
► 2 4
Question No: 7 ( Marks: 1 ) – Please choose one
If there are N external nodes in a binary tree then what will be the no. of internal nodes in this binary tree?
► N -1
► N+1
► N+2
► N
Question No: 8 ( Marks: 1 ) – Please choose one
If there are N internal nodes in a binary tree then what will be the no. of external nodes in this binary tree?
► N -1
► N
► N +1
► N +2
Question No: 9 ( Marks: 1 ) – Please choose one
If we have 1000 sets each containing a single different person. Which of the following relation will be true on each set:
► Reflexive
► Symmetric
► Transitive
► Associative
Question No: 10 ( Marks: 1 ) – Please choose one
Which one of the following is NOT the property of equivalence relation:
► Reflexive
► Symmetric
► Transitive
► Associative
Question No: 11 ( Marks: 1 ) – Please choose one
A binary tree of N nodes has _______.
► Log_{10} N levels
► Log_{2} N levels
► N / 2 levels
► N x 2 levels
Question No: 12 ( Marks: 1 ) – Please choose one
The easiest case of deleting a node from BST is the case in which the node to be deleted ___________.
► Is a leaf node
► Has left subtree only
► Has right subtree only
► Has both left and right subtree
Question No: 13 ( Marks: 1 ) – Please choose one
If there are N elements in an array then the number of maximum steps needed to find an element using Binary Search is _______ .
► N
► N^{2}
► Nlog_{2}N
► log_{2}N
Question No: 14 ( Marks: 1 ) – Please choose one
Merge sort and quick sort both fall into the same category of sorting algorithms. What is this category?
► O(nlogn) sorts
► Interchange sort
► Average time is quadratic
► None of the given options.
Question No: 15 ( Marks: 1 ) – Please choose one
If one pointer of the node in a binary tree is NULL then it will be a/an _______ .
► External node
► Root node
► Inner node
► Leaf node
Question No: 16 ( Marks: 1 ) – Please choose one
We convert the ________ pointers of binary to threads in threaded binary tree.
► Left
► Right
► NULL
► None of the given options
Question No: 17 ( Marks: 1 ) – Please choose one
If the bottom level of a binary tree is NOT completely filled, depicts that the tree is NOT a ► Expression tree
► Threaded binary tree
► complete Binary tree
► Perfectly complete Binary tree
Question No: 18 ( Marks: 1 ) – Please choose one
What is the best definition of a collision in a hash table?
► Two entries are identical except for their keys.
► Two entries with different data have the exact same key
► Two entries with different keys have the same exact hash value.
►Two entries with the exact same key have different hash values.
Question No: 19 ( Marks: 1 ) – Please choose one
Suppose that a selection sort of 100 items has completed 42 iterations of the main loop. How many items are now guaranteed to be in their final spot (never to be moved again
► 21
► 41
► 42
► 43
Question No: 20 ( Marks: 1 ) – Please choose on
Suppose you implement a Min heap (with the smallest element on top) in an array. Consider the different arrays below; determine the one that cannot possibly be a heap:
► 16, 18, 20, 22, 24, 28, 30
► 16, 20, 18, 24, 22, 30, 28
► 16, 24, 18, 28, 30, 20, 22
► 16, 24, 20, 30, 28, 18, 22
Question No: 21 ( Marks: 1 ) – Please choose one
Do you see any problem in the code of nextInOrder below:
TreeNode * nextInorder(TreeNode * p)
{
if(p->RTH == thread)
return( p->R );
else {
p = p->R;
while(p->LTH == child)
p = p->R;
return p;
}
}
► The function has no problem and will fulfill the purpose successfully.
► The function cannot be compile as it has syntax error.
► The function has logical problem, therefore, it will not work properly.
► The function will be compiled but will throw runtime exception immediately after the control is transferred to this function.
Question No: 22 ( Marks: 1 ) – Please choose one
Which of the following statement is correct about find(x) operation:
► A find(x) on element x is performed by returning exactly the same node that is found.
► A find(x) on element x is performed by returning the root of the tree containing x.
► A find(x) on element x is performed by returning the whole tree itself containing x.
► A find(x) on element x is performed by returning TRUE.
Question No: 23 ( Marks: 1 ) – Please choose on
Which of the following statement is NOT correct about find operation:
► It is not a requirement that a find operation returns any specific name, just that finds on two elements return the same answer if and only if they are in the same set.
► One idea might be to use a tree to represent each set, since each element in a tree has the same root, thus the root can be used to name the set.
► Initially each set contains one element.
► Initially each set contains one element and it does not make sense to make a tree of one node only.
Question No: 24 ( Marks: 1 ) – Please choose one
In complete binary tree the bottom level is filled from ________
► Left to right
► Right to left
► Not filled at all
► None of the given options
Question No: 25 ( Marks: 1 ) – Please choose one
Here is an array of ten integers:
5 3 8 9 1 7 0 2 6 4
The array after the FIRST iteration of the large loop in a selection sort (sorting from smallest to largest).
► 0 3 8 9 1 7 5 2 6 4
► 2 6 4 0 3 8 9 1 7 5
► 2 6 4 9 1 7 0 3 8 5
► 0 3 8 2 6 4 9 1 7 5
Question No: 26 ( Marks: 1 ) – Please choose one
What requirement is placed on an array, so that binary search may be used to locate an entry?
► The array elements must form a heap.
► The array must have at least 2 entries.
► The array must be sorted.
► The array’s size must be a power of two.
Question No: 27 ( Marks: 2 )
Give one example of Hashing
Question No: 28 ( Marks: 2 )
How heap sort works to sort a set of data.
Question No: 29 ( Marks: 2 )
How we can implement Table ADT using Linked List
Question No: 30 ( Marks: 2 )
If we allow assignment to constants what will happen?
Question No: 31 ( Marks: 3 )
Explain the process of Deletion in a Min-Heap
Question No: 32 ( Marks: 3 )
Give any three characteristics of Union by Weight method.
Question No: 33 ( Marks: 3 )
“For smaller lists, linear insertion sort performs well, but for larger lists, quick sort is suitable to apply.” Justify why?
Question No: 34 ( Marks: 5 )
Write down the C++ code to implement Insertion Sort Algorithm.
Question No: 35 ( Marks: 5 )
Consider the following Threaded Binary Tree,
You have to give the values that should be in the four variables given below, for the node 37
- LTH (Left flag)
- RTH (Right flag)
- Left node pointer (->L)
- Right node pointer (->R)
Question No: 36 ( Marks: 5 )
What is Disjoint Sets? Explain with an example.
FINALTERM EXAMINATION
Spring 2010
CS301- Data Structures
Time: 90 min
Marks: 58
Question No: 1 ( Marks: 1 ) – Please choose o
Which one of the following operations returns top value of the stack?
► Push
► Pop
► Top
► First
Question No: 2 ( Marks: 1 ) – Please choose one
Compiler uses which one of the following in Function calls,
► Stack
► Queue
► Binary Search Tree
► AVL Tree
Question No: 3 ( Marks: 1 ) – Please choose one
Every AVL is _________________
► Binary Tree
► Complete Binary Tree
► None of these
► Binary Search Tree
Question No: 4 ( Marks: 1 ) – Please choose one
If there are 56 internal nodes in a binary tree then how many external nodes this binary tree will have?
► 54
► 55
► 56
► 57
Question No: 5 ( Marks: 1 ) – Please choose one
If there are 23 external nodes in a binary tree then what will be the no. of internal nodes in this binary tree?
► 23
► 24
► 21
► 22
Question No: 6 ( Marks: 1 ) – Please choose one
Which one of the following is not an example of equivalence relation?
► Electrical connectivity
► Set of people
► <= relation
► Set of pixels
Question No: 7 ( Marks: 1 ) – Please choose one
Binary Search is an algorithm of searching, used with the ______ data.
► Sorted
► Unsorted
► Heterogeneous
► Random
Question No: 8 ( Marks: 1 ) – Please choose one
Which one of the following is NOT true regarding the skip list?
► Each list S_{i} contains the special keys + infinity and – infinity.
► List S_{0 }contains the keys of S in non-decreasing order.
► Each list is a subsequence of the previous one.
► List S_{h} contains only the n special keys.
Question No: 9 ( Marks: 1 ) – Please choose one
A simple sorting algorithm like selection sort or bubble sort has a worst-case of
► O(1) time because all lists take the same amount of time to sort
► O(n) time because it has to perform n swaps to order the list.
► O(n^{2}) time because sorting 1 element takes O(n) time – After 1 pass through the list,
either of these algorithms can guarantee that 1 element is sorted.
► O(n^{3}) time, because the worst case has really random input which takes longer to
sort.
Question No: 10 ( Marks: 1 ) – Please choose one
Which of the following is a property of binary tree?
► A binary tree of N external nodes has N internal node.
► A binary tree of N internal nodes has N+ 1 external node.
► A binary tree of N external nodes has N+ 1 internal node.
► A binary tree of N internal nodes has N- 1 external node.
Question No: 11 ( Marks: 1 ) – Please choose one
By using __________we avoid the recursive method of traversing a Tree, which makes use of stacks and consumes a lot of memory and time.
► Binary tree only
► Threaded binary tree
► Heap data structure
► Huffman encoding
Question No: 12 ( Marks: 1 ) – Please choose one
Which of the following statement is true about dummy node of threaded binary tree?
► This dummy node never has a value.
► This dummy node has always some dummy value.
► This dummy node has either no value or some dummy value.
► This dummy node has always some integer value.
Question No: 13 ( Marks: 1 ) – Please choose one
For a perfect binary tree of height h, having N nodes, the sum of heights of nodes is
► N – (h – 1)
► N – (h + 1)
► N – 1
► N – 1 + h
Question No: 14 ( Marks: 1 ) – Please choose one
What is the best definition of a collision in a hash table?
► Two entries are identical except for their keys.
► Two entries with different data have the exact same key
► Two entries with different keys have the same exact hash value.
► Two entries with the exact same key have different hash values.
Question No: 15 ( Marks: 1 ) – Please choose one
Which formula is the best approximation for the depth of a heap with n nodes?
► log (base 2) of n
► The number of digits in n (base 10), e.g., 145 has three digits
► The square root of n
► n
Question No: 16 ( Marks: 1 ) – Please choose one
Which of the following statement is NOT correct about find operation:
► It is not a requirement that a find operation returns any specific name, just that finds on two elements return the same answer if and only if they are in the same set.
► One idea might be to use a tree to represent each set, since each element in a tree has the same root, thus the root can be used to name the set.
► Initially each set contains one element.
► Initially each set contains one element and it does not make sense to make a tree of one node only.
Question No: 17 ( Marks: 1 ) – Please choose one
Which of the following is not true regarding the maze generation?
► Randomly remove walls until the entrance and exit cells are in the same set.
► Removing a wall is the same as doing a union operation.
► Remove a randomly chosen wall if the cells it separates are already in the same set.
► Do not remove a randomly chosen wall if the cells it separates are already in the same set.
Question No: 18 ( Marks: 1 ) – Please choose one
In threaded binary tree the NULL pointers are replaced by ,
► preorder successor or predecessor
► inorder successor or predecessor
► postorder successor or predecessor
► NULL pointers are not replaced
Question No: 19 ( Marks: 1 ) – Please choose one
Which of the given option is NOT a factor in Union by Size:
► Maintain sizes (number of nodes) of all trees, and during union.
► Make smaller tree, the subtree of the larger one.
► Make the larger tree, the subtree of the smaller one.
► Implementation: for each root node i, instead of setting parent[i] to -1, set it to -k if tree rooted at i has k nodes.
Question No: 20 ( Marks: 1 ) – Please choose one
Suppose we had a hash table whose hash function is “n % 12”, if the number 35 is already in the hash table, which of the following numbers would cause a collision?
► 144
► 145
► 143
► 148
Question No: 21 ( Marks: 1 ) – Please choose o
What requirement is placed on an array, so that binary search may be used to locate an entry?
► The array elements must form a heap.
► The array must have at least 2 entries.
► The array must be sorted.
► The array’s size must be a power of two
Question No: 22 ( Marks: 1 ) – Please choose one
A binary tree with 24 internal nodes has ______ external nodes.
► 22
► 23
► 48
► 25
Question No: 23 ( Marks: 1 ) – Please choose on
In case of deleting a node from AVL tree, rotation could be prolong to the root node.
► Yes
► No
Question No: 24 ( Marks: 1 ) – Please choose one
when we have declared the size of the array, it is not possible to increase or decrease it during the ________of the program.
► Declaration
► Execution
► Defining
► None of the abov
Question No: 25 ( Marks: 1 ) – Please choose one
it will be efficient to place stack elements at the start of the list because insertion and removal take _______time.
► Variable
► Constant
► Inconsistent
► None of the above
Question No: 26 ( Marks: 1 ) – Please choose one
_______ is the stack characteristic but _______was implemented because of the size limitation of the array.
► isFull(),isEmpty()
► pop(), push()
► isEmpty() , isFull()
► push(),pop()
Question No: 27 ( Marks: 2 )
Give the difference between strict and complete binary tree.
Ans:
A tree is a strictly binary tree if its each leaf node has non-empty left and right sub trees, and
If there are left and right sub-trees for each node in a binary tree is known as complete binary tree.
Question No: 28 ( Marks: 2 )
A complete binary tree can be stored in an array. While storing the tree in an array
we leave the first position (0th index )of the array empty. Why?
Ans
Because we need a pointer in an array to point a position of node of tree. parent node and the children nodes. In case of having a node with left and right children, stored at position i in the array, the left 2i and the right child will be at 2i+1 position. If the value of i 2, the parent will be at position 2 and the left child will be at position 2i i.e. 4 .The right child will be at position 2i+1 i.e. 5. we have not started the 0^{th} position. It is simply due to the fact if the position is 0, 2i will also
become 0. So we will start from the 1^{st} position, ignoring the 0^{th}.
Question No: 29 ( Marks: 2 )
Give the name of two Divide and Conquer algorithms.
Ans:
- Merge sort
- Quick sort
- Heap sort
Question No: 30 ( Marks: 2 )
Give the effect of sorted data on Binary Search.
Question No: 31 ( Marks: 3
Give any three characteristics of Union by Weight method.
Ans:
- 1. This is also calles union by size.
- Maintain sizes (number of nodes) of all trees, and during union.
- Make smaller tree, the subtree of the larger one.
- for each root node i, instead of setting parent[i] to -1, set it
to -k if tree rooted at i has k nodes.
Question No: 32 ( Marks: 3 )
Here is an array of ten integers:
5 3 8 9 1 7 0 2 6 4
Draw this array after the FIRST iteration of the large loop in an insertion sort (sorting from smallest to largest). This iteration has shifted at least one item in the array!
Question No: 33 ( Marks: 3 )
Give your comment on the statement that heap uses least memory in array representation of binary trees. Justify your answer in either case.
Question No: 34 ( Marks: 5 )
Suppose we have the following representation for a complete Binary Search Tree, tell the Left and Right child nodes and Parent node of the node D
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | … | |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | … |
Question No: 35 ( Marks: 5 )
Explain the following terms:
- Collision
- Linear Probing
- Quadratic Probing
Ans:
Collision:
it takes place when two or more keys (data items) produce the same index.
Linear Probing
when there is a collision, some other location in the array is found. This is known as linear probing. In linear probing, at the time of collisions, we add one to the index and check that location. If it is also not empty, we add 2 and check that position. Suppose we keep on incrementing the array index and reach at the end of the table. We were unable to find the space and reached the last location of the array.
Quadratic Probing
In the quadratic probing when a collision happens we try to find the empty location at
index + 12. If it is filled then we add 22 and so on.
Quadratic probing uses different formula:
- Use F(i) = i^{2} (square of i) to resolve collisions
- If hash function resolves to H and a search in cell H is inconclusive, try
H + 1^{2}, H + 22, H + 32
Question No: 36 ( Marks: 5 )
Here is an array with exactly 15 elements:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15.
Suppose that we are doing a binary search for an element. Indicate any elements that will be found by examining two or fewer numbers from the array.
FINALTERM EXAMINATION
Fall 2009
CS301- Data Structures
Time: 120 min
Marks: 75
Question No: 1 ( Marks: 1 ) – Please choose one
The arguments passed to a function should match in number, type and order with the parameters in the function definition.
► True
► False
Question No: 2 ( Marks: 1 ) – Please choose one
If numbers 5, 222, 4, 48 are inserted in a queue, which one will be removed first?
► 48
► 4
► 222
► 5
Question No: 3 ( Marks: 1 ) – Please choose one
Suppose currentNode refers to a node in a linked list (using the Node class with member variables called data and nextNode). What statement changes currentNode so that it refers to the next node?
► currentNode ++;
► currentNode = nextNode;
► currentNode += nextNode;
► currentNode = currentNode->nextNode;
Question No: 4 ( Marks: 1 ) – Please choose one
A Compound Data Structure is the data structure which can have multiple data items of same type or of different types. Which of the following can be considered compound data structure?
► Arrays
► LinkLists
► Binary Search Trees
► All of the given options
Question No: 5 ( Marks: 1 ) – Please choose one
Here is a small function definition:
void f(int i, int &k)
{
i = 1;
k = 2;
}
Suppose that a main program has two integer variables x and y, which are given the value 0. Then the main program calls f(x,y); What are the values of x and y after the function f finishes?
► Both x and y are still 0.
► x is now 1, but y is still 0.
► x is still 0, but y is now 2.
► x is now 1, and y is now 2.
Question No: 6 ( Marks: 1 ) – Please choose one
The difference between a binary tree and a binary search tree is that ,
► a binary search tree has two children per node whereas a binary tree can have none, one, or two children per node
► in binary search tree nodes are inserted based on the values they contain
► in binary tree nodes are inserted based on the values they contain
► none of these
Question No: 7 ( Marks: 1 ) – Please choose one
Compiler uses which one of the following to evaluate a mathematical equation,
► Binary Tree
► Binary Search Tree
► Parse Tree
► AVL Tree
Question No: 8 ( Marks: 1 ) – Please choose one
If there are 56 internal nodes in a binary tree then how many external nodes this binary tree will have?
► 54
► 55
► 56
► 57
Question No: 9 ( Marks: 1 ) – Please choose one
if there are 23 external nodes in a binary tree then what will be the no. of internal nodes in this binary tree?
► 23
► 24
► 21
► 22
Question No: 10 ( Marks: 1 ) – Please choose one
Which of the following method is helpful in creating the heap at once?
► insert
► add
► update
► preculateDown (lecture #31 page 1)
Question No: 11 ( Marks: 1 ) – Please choose one
The definition of Transitivity property is
► For all element x member of S, x R x
► For all elements x and y, x R y if and only if y R x
► For all elements x, y and z, if x R y and y R z then x R z
► For all elements w, x, y and z, if x R y and w R z then x R z
Question No: 12 ( Marks: 1 ) – Please choose one
A binary tree of N nodes has _______.
► Log_{10} N levels
► Log_{2} N levels
► N / 2 levels
► N x 2 levels
Question No: 13 ( Marks: 1 ) – Please choose one
If there are N elements in an array then the number of maximum steps needed to find an element using Binary Search is _______ .
► N
► N^{2}
► Nlog_{2}N
► log_{2}N
Question No: 14 ( Marks: 1 ) – Please choose one
Consider te following array
23 15 5 12 40 10 7
After the first pass of a particular algorithm, the array looks like
15 5 12 23 10 7 40
Name the algorithm used
► Heap sort
► Selection sort
► Insertion sort
► Bubble sort
Question No: 15 ( Marks: 1 ) – Please choose one
If both pointers of the node in a binary tree are NULL then it will be a/an _______ .
► Inner node
► Leaf node
► Root node
► None of the given options
Question No: 16 ( Marks: 1 ) – Please choose one
By using __________we avoid the recursive method of traversing a Tree, which makes use of stacks and consumes a lot of memory and time.
► Binary tree only
► Threaded binary tree
► Heap data structure
► Huffman encoding
Question No: 17 ( Marks: 1 ) – Please choose one
A complete binary tree of height 3 has between ________ nodes.
► 8 to 14
► 8 to 15
► 8 to 16
► 8 to 17
Question No: 18 ( Marks: 1 ) – Please choose one
Consider a min heap, represented by the following array:
3,4,6,7,5,10
After inserting a node with value 1.Which of the following is the updated min heap?
► 3,4,6,7,5,10,1
► 3,4,6,7,5,1,10
► 3,4,1,5,7,10,6
► 1,4,3,5,7,10,6 close to correct but correct ans is 1,4,3,7,5,10,6
Question No: 19 ( Marks: 1 ) – Please choose one
Consider a min heap, represented by the following array:
10,30,20,70,40,50,80,60
After inserting a node with value 31.Which of the following is the updated min heap?
► 10,30,20,31,40,50,80,60,70
► 10,30,20,70,40,50,80,60,31
► 10,31,20,30,40,50,80,60,31
► 31,10,30,20,70,40,50,80,60
Question No: 20 ( Marks: 1 ) – Please choose one
Which one of the following algorithms is most widely used due to its good average time,
► Bubble Sort
► Insertion Sort
► Quick Sort
► Merge Sort
Question No: 21 ( Marks: 1 ) – Please choose one
Which of the following statement is correct about find(x) operation:
► A find(x) on element x is performed by returning exactly the same node that is found.
►A find(x) on element x is performed by returning the root of the tree containing x.
► A find(x) on element x is performed by returning the whole tree itself containing x.
► A find(x) on element x is performed by returning TRUE.
Question No: 22 ( Marks: 1 ) – Please choose one
Which of the following statement is NOT correct about find operation:
►It is not a requirement that a find operation returns any specific name, just that finds on two elements return the same answer if and only if they are in the same set.
► One idea might be to use a tree to represent each set, since each element in a tree has the same root, thus the root can be used to name the set.
► Initially each set contains one element.
► Initially each set contains one element and it does not make sense to make a tree of one node only.
Question No: 23 ( Marks: 1 ) – Please choose one
The following are statements related to queues.
(i) The last item to be added to a queue is the first item to be removed False statement
(ii) A queue is a structure in which both ends are not used False statement
(iii) The last element hasn’t to wait until all elements preceding it on the queue are removed False statement
(iv) A queue is said to be a last-in-first-out list or LIFO data structure. False statement
Which of the above is/are related to normal queues?
► (iii) and (ii) only
► (i), (ii) and (iv) only
► (ii) and (iv) only
► None of the given options
Question No: 24 ( Marks: 1 ) – Please choose one
The maximum number of external nodes (leaves) for a binary tree of height H is _______
► 2^{H}
► 2^{H }+1
► 2^{H }-1
► 2^{H }+2
Question No: 25 ( Marks: 1 ) – Please choose one
In complete binary tree the bottom level is filled from ________
► Left to right
► Right to left
► Not filled at all
► None of the given options
Question No: 26 ( Marks: 1 ) – Please choose one
We are given N items to build a heap , this can be done with _____ successive inserts.
► N-1
► N
► N+1
► N^2
Question No: 27 ( Marks: 1 ) – Please choose one
Suppose we had a hash table whose hash function is “n % 12”, if the number 35 is already in the hash table, which of the following numbers would cause a collision?
► 144
► 145
► 143
► 148
Question No: 28 ( Marks: 1 ) – Please choose one
Here is an array of ten integers:
5 3 8 9 1 7 0 2 6 4
The array after the FIRST iteration of the large loop in a selection sort (sorting from smallest to largest).
► 0 3 8 9 1 7 5 2 6 4
► 2 6 4 0 3 8 9 1 7 5
► 2 6 4 9 1 7 0 3 8 5
► 0 3 8 2 6 4 9 1 7 5
Question No: 29 ( Marks: 1 ) – Please choose one
What requirement is placed on an array, so that binary search may be used to locate an entry? ► The array elements must form a heap.
► The array must have at least 2 entries.
► The array must be sorted.
► The array’s size must be a power of two.
Question No: 30 ( Marks: 1 ) – Please choose one
In case of deleting a node from AVL tree, rotation could be prolong to the root node.
► Yes
► No
Question No: 31 ( Marks: 1 )
In merge sort do we need to have extra memory, justify your answer in either case.
Yes we need extra memory in merge sort.
Question No: 32 ( Marks: 1 )
Where is Inorder Predecessor of a non leaf node is present in a Binary Search Tree?
Question No: 33 ( Marks: 2 )
How we can search an element in Skip List.
Question No: 34 ( Marks: 2 )
What is the drawback of using arrays to store Binary Search Trees.
Question No: 35 ( Marks: 3 )
Calculate the codes of the following characters in table below using the hoffman encoding tree,
character | Code |
NL | 10000 |
SP | 1111 |
o | 001 |
b | 0100 |
i | 0101 |
r | 110 |
Question No: 36 ( Marks: 3 )
“For smaller lists, linear insertion sort performs well, but for larger lists, quick sort is suitable to apply.” Justify why?
Question No: 37 ( Marks: 3 )
Suppose that we have implemented a priority queue by storing the items in a heap. We are now executing a reheapification downward and the out-of-place node has priority of 42. The node’s parent has a priority of 72, the left child has priority 52 and the node’s right child has priority 62. Which statement best describes the status of the reheapification.
A. The reheapification is done.
B. The next step will swap the out-of-place node with its parent.
C. The next step will swap the out-of-place node with its left child.
D. The next step will swap the out-of-place node with its right child.
E. None of these.
Question No: 38 ( Marks: 5 )
Give two different reasons to explain why the following binary tree is not a heap:
Question No: 39 ( Marks: 5 )
Here is an array of ten integers:
5 3 8 9 1 7 0 2 6 4
Sort the array by using selection sort algorithm and show content of array after each step.
5 | 3 | 8 | 9 | 1 | 7 | 0 | 2 | 6 | 4 | |
STEP 1 | 0 | 3 | 8 | 9 | 1 | 7 | 5 | 2 | 6 | 4 |
STEP 2 | 0 | 1 | 8 | 9 | 3 | 7 | 5 | 2 | 6 | 4 |
STEP3 | 0 | 1 | 2 | 9 | 3 | 7 | 5 | 8 | 6 | 4 |
STEP 4 | 0 | 1 | 2 | 3 | 9 | 7 | 5 | 8 | 6 | 4 |
STEP5 | 0 | 1 | 2 | 3 | 4 | 7 | 5 | 8 | 6 | 9 |
STEP6 | 0 | 1 | 2 | 3 | 4 | 5 | 7 | 8 | 6 | 9 |
STEP 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 7 | 9 |
STEP8 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
Question No: 40 ( Marks: 10 )
A long sequence of vowels needs to be transmitted efficiently so a programmer decides to use Huffman encoding to encode the vowels. A distribution count study of typical data yielded the following frequency table.
Frequency Table
character frequency Huffman code
A 33978 _ _ _ _ _ _ _
E 20676 _ _ _ _ _ _ _
I 15814 _ _ _ _ _ _ _
O 21552 _ _ _ _ _ _ _
U 10324 _ _ _ _ _ _ _
Y 4975 _ _ _ _ _ _ _
A) Create a Huffman tree to determine the binary codes for each character.
B) Fill the codes into the table above.
C) Encode the following sequence EIYOUA
Question No: 41 ( Marks: 10 )
Consider the following tree.
a) Show that either it is a heap or not.
b) If it is a heap then what type of heap is it?
c) Add 40 in the heap and convert it in max heap.
FINALTERM EXAMINATION
Fall 2009
CS301- Data Structures
Time: 120 min
Marks: 75
Question No: 1 ( Marks: 1 ) – Please choose one
__________ only removes items in reverse order as they were entered.
► Stack
► Queue
► Both of these
► None of these
Question No: 2 ( Marks: 1 ) – Please choose one
Here is a small function definition:
void f(int i, int &k)
{
i = 1;
k = 2;
}
Suppose that a main program has two integer variables x and y, which are given the value 0. Then the main program calls f(x,y); What are the values of x and y after the function f finishes?
► Both x and y are still 0.
► x is now 1, but y is still 0.
► x is still 0, but y is now 2.
► x is now 1, and y is now 2.
Question No: 3 ( Marks: 1 ) – Please choose one
Select the one FALSE statement about binary trees:
► Every binary tree has at least one node.
► Every non-empty tree has exactly one root node.
► Every node has at most two children.
► Every non-root node has exactly one parent.
Question No: 4 ( Marks: 1 ) – Please choose one
Every AVL is _________________
► Binary Tree
► Complete Binary Tree
► None of these
► Binary Search Tree
Question No: 5 ( Marks: 1 ) – Please choose one
Searching an element in an AVL tree take maximum _______ time (where n is no. of nodes in AVL tree),
► Log_{2}(n+1)
► Log_{2}(n+1) -1
► 1.44 Log_{2}n
► 1.66 Log_{2}n
Question No: 6 ( Marks: 1 ) – Please choose one
Suppose that we have implemented a priority queue by storing the items in a heap. We are now executing a reheapification downward and the out-of-place node has priority of 42. The node’s parent has a priority of 72, the left child has priority 52 and the node’s right child has priority 62. Which statement best describes the status of the reheapification.
► The reheapification is done.
► The next step will interchange the two children of the out-of-place node.
► The next step will swap the out-of-place node with its parent.
► The next step will swap the out-of-place node with its left child.
Question No: 7 ( Marks: 1 ) – Please choose one
Suppose you implement a heap (with the largest element on top) in an array. Consider the different arrays below, determine the one that cannot possibly be a heap:
► 7 6 5 4 3 2 1
► 7 3 6 2 1 4 5
► 7 6 4 3 5 2 1
► 7 3 6 4 2 5 1
Question No: 8 ( Marks: 1 ) – Please choose one
If there are 23 external nodes in a binary tree then what will be the no. of internal nodes in this binary tree?
► 23
► 24
► 21
► 22
Lesson # 27(the number of internal nodes is N, the number of external nodes will be N+1.)
Question No: 9 ( Marks: 1 ) – Please choose one
If there are N external nodes in a binary tree then what will be the no. of internal nodes in this binary tree?
► N -1
► N+1
► N+2
► N
Question No: 10 ( Marks: 1 ) – Please choose one
Which one of the following is NOT the property of equivalence relation:
► Reflexive
► Symmetric
► Transitive
► Associative (lesson no 34)
Question No: 11 ( Marks: 1 ) – Please choose one
The definition of Transitivity property is
► For all element x member of S, x R x
► For all elements x and y, x R y if and only if y R x
► For all elements x, y and z, if x R y and y R z then x R z (lesson no 34)
► For all elements w, x, y and z, if x R y and w R z then x R z
Question No: 12 ( Marks: 1 ) – Please choose one
Union is a _______ time operation.
► Constant ( lesson # 35 page 11)
► Polynomial
► Exponential
► None of the given option
Question No: 13 ( Marks: 1 ) – Please choose one
Which of the following is NOT a correct statement about Table ADT.
► In a table, the type of information in columns may be different. yes
► A table consists of several columns, known as entities. (Lesson # 38 page 1 )
► The row of a table is called a record.
► A major use of table is in databases where we build and use tables for keeping information.
Correct A table consists of several columns, known as fields.
Question No: 14 ( Marks: 1 ) – Please choose one
In the worst case of deletion in AVL tree requires _________.
► Only one rotation
► Rotation at each non-leaf node
► Rotation at each leaf node
► Rotations equal to log2 N (lesson # 23)
Question No: 15 ( Marks: 1 ) – Please choose on
Binary Search is an algorithm of searching, used with the ______ data.
► Sorted (lesson # 39)
► Unsorted
► Heterogeneous
► Random
Question No: 16 ( Marks: 1 ) – Please choose on
Which of the following statement is correct?
► A Threaded Binary Tree is a binary tree in which every node that does not have a left child has a THREAD (in actual sense, a link) to its INORDER successor.
► A Threaded Binary Tree is a binary tree in which every node that does not have a right child has a THREAD (in actual sense, a link) to its PREOREDR successor.
► A Threaded Binary Tree is a binary tree in which every node that does not have a right child has a THREAD (in actual sense, a link) to its INORDER successor.
► A Threaded Binary Tree is a binary tree in which every node that does not have a right child has a THREAD (in actual sense, a link) to its POSTORDER successor.
Question No: 17 ( Marks: 1 ) – Please choose one
By using __________we avoid the recursive method of traversing a Tree, which makes use of stacks and consumes a lot of memory and time.
► Binary tree only
► Threaded binary tree (lesson # 27 page 3)
► Heap data structure
► Huffman encoding
Question No: 18 ( Marks: 1 ) – Please choose one
Which of the following statement is NOT true about threaded binary tree?
► Right thread of the right-most node points to the dummy node.
► Left thread of the left-most node points to the dummy node.
► The left pointer of dummy node points to the root node of the tree.
► Left thread of the right-most node points to the dummy node.
Lecture # 28 “The left pointer of this node is pointing to the root node of the tree while the right pointer is seen pointing itself i.e. to dummy node. There is no problem in doing all these things. We have put the address of dummy node in its right pointer and pointed the left thread of the left most node towards the dummy node. Similarly the right thread of the right-most node is pointing to the dummy node. Now we have some extra pointers whose help will make the nextInorder routine function properly.”
Question No: 19 ( Marks: 1 ) – Please choose one
Consider a min heap, represented by the following array:
11,22,33,44,55
After inserting a node with value 66.Which of the following is the updated min heap?
► 11,22,33,44,55,66
► 11,22,33,44,66,55
► 11,22,33,66,44,55
► 11,22,66,33,44,55
Question No: 20 ( Marks: 1 ) – Please choose one
Consider a min heap, represented by the following array:
3,4,6,7,5
After calling the function deleteMin().Which of the following is the updated min heap?
► 4,6,7,5
► 6,7,5,4
► 4,5,6,7
► 4,6,5,7
Question No: 21 ( Marks: 1 ) – Please choose one
We can build a heap in ________ time.
► Linear (lecture # 30 page 8)
► Exponential
► Polynomial
► None of the given options
Question No: 22 ( Marks: 1 ) – Please choose one
Suppose we are sorting an array of eight integers using quick sort, and we have just finished the first partitioning with the array looking like this:
2 5 1 7 9 12 11 10
Which statement is correct?
► The pivot could be either the 7 or the 9.
► The pivot could be the 7, but it is not the 9.
► The pivot is not the 7, but it could be the 9
► Neither the 7 nor the 9 is the pivot.
Question No: 23 ( Marks: 1 ) – Please choose one
Which formula is the best approximation for the depth of a heap with n nodes?
► log (base 2) of n
► The number of digits in n (base 10), e.g., 145 has three digits
► The square root of n
► n
Question No: 24 ( Marks: 1 ) – Please choose one
Suppose you implement a Min heap (with the smallest element on top) in an array. Consider the different arrays below; determine the one that cannot possibly be a heap:
► 16, 18, 20, 22, 24, 28, 30
► 16, 20, 18, 24, 22, 30, 28
► 16, 24, 18, 28, 30, 20, 22
► 16, 24, 20, 30, 28, 18, 22
Question No: 25 ( Marks: 1 ) – Please choose one
While joining nodes in the building of Huffman encoding tree if there are more nodes with same frequency, we choose the nodes _______.
► Randomly
► That occur first in the text message
► That are lexically smaller among others.
► That are lexically greater among others
Question No: 26 ( Marks: 1 ) – Please choose one
Consider the following paragraph with blanks.
A …….…….. is a linear list where …………… and ………… take place at the
same end . This end is called the …….……….
What would be the correct filling the above blank positions?
► (i) queue (ii) insertion (iii) removals (iv) top
► (i) stack (ii) insertion (iii) removals (iv) bottom
► (i) stack (ii) insertion (iii) removals (iv) top
► (i) tree (ii) insertion (iii) removals (iv) top
Question No: 27 ( Marks: 1 ) – Please choose one
A binary tree with 33 internal nodes has _______ links to internal nodes.
► 31
► 32 (n-1 links to internal nodes)
► 33
► 66 (2n links)
A binary tree with N internal nodes has N+1 external nodes.
Property: A binary tree with N internal nodes has 2N links:
N-1 links to internal nodes and N+1 links to external nodes.
Question No: 28 ( Marks: 1 ) – Please choose on
Which traversal gives a decreasing order of elements in a heap where the max element is stored at the top?
► post-order
► level-order
► inorder
► None of the given options
Question No: 29 ( Marks: 1 ) – Please choose one
What requirement is placed on an array, so that binary search may be used to locate an entry
► The array elements must form a heap.
► The array must have at least 2 entries.
► The array must be sorted. (lecture # 38)
► The array’s size must be a power of two.
Question No: 30 ( Marks: 1 ) – Please choose one
Which of the following is a non linear data structure?
► Linked List
► Stack
► Queue
► Tree (lecture # 11 page 4)
question No: 31 ( Marks: 1 )
If a Binary Tree has N internal nodes what are the no. of external nodes in it.
. Lesson # 27(the number of internal nodes is N, the number of external nodes will be N+1.)
Question No: 32 ( Marks: 1 )
What is meant by Symmetry in equivalence relations?
Sol.= Symmetry in equivalence relations mean for all elements x and y, x R y if and only if y R x
Question No: 33 ( Marks: 2 )
How heap sort works to sort a set of data.
Question No: 34 ( Marks: 2 )
How we can apply Find operation on elements combined through Union operation.
Question No: 35 ( Marks: 3 )
How we can use concept of equivalence relations to generate a Maze.
Question No: 36 ( Marks: 3 )
Suppose we are sorting an array of eight integers using a some quadratic sorting algorithm. After four iterations of the algorithm’s main loop, the array elements are ordered as shown here:
2 4 5 7 8 1 3 6
Which statement is correct? (Note: Our selectionsort picks largest items first.)
A. The algorithm might be either selectionsort or insertionsort.
B. The algorithm might be selectionsort, but it is not insertionsort.
C. The algorithm is not selectionsort, but it might be insertionsort. (Correct)
D. The algorithm is neither selectionsort nor insertionsort.
E. None of these.
Question No: 37 ( Marks: 3 )
How many leaf and non-leaf nodes are present in a complete binary tree if its depth is 7 ?
Solution:
Leaf nodes = 2^7=128
Non-leaf nodes =127
Question No: 38 ( Marks: 5 )
If we insert a new element into an AVL tree of height 4, is one rotation sufficient to re-establish balance? Justify your answer.
Question No: 39 ( Marks: 5 )
Write down the C++ code from Selection Sort Algorithm.
Question No: 40 ( Marks: 10 )
Consider the following data:
the cat in the hat
a) Build frequency table for the above data.
b) Create a Huffman tree to determine the binary codes for each character.
c) What will be the code of each letter?
a)
Character | Frequency |
c | 1 |
i | 1 |
n | 1 |
e | 2 |
a | 2 |
h | 3 |
t | 4 |
sp | 4 |
Character | Code |
c | 0000 |
i | 0001 |
n | 0010 |
e | 0011 |
a | 010 |
h | 011 |
t | 10 |
sp | 11 |
c)
Question No: 41 ( Marks: 10 )
Suppose we have build a Skip list .Now we want to add and remove items from the list .Give Algorithms for insert (item) and delete (item) methods of the Skip List.
Solution:
When we are going to insert (add) an item (x,0) into a skip list, we use a randomized algorithm. We send the item in a pair.
insert
To insert an item (x, o) into a skip list, we use a randomized algorithm:
- We repeatedly toss a coin until we get tails, and we denote with i the number of times the coin came up heads
- If i ³ h, we add to the skip list new lists Sh+1, … , Si +1, each containing only the two special keys
- We search for x in the skip list and find the positions p0, p1 , …, pi of the items with largest key less than x in each list S0, S1, … , Si
- For j ¬ 0, …, i, we insert item (x, o) into list Sj after position pj
delete
To remove an item with key x from a skip list, we proceed as follows:
- We search for x in the skip list and find the positions p0, p1 , …, pi of the items with key x, where position pj is in list Sj
- We remove positions p0, p1 , …, pi from the lists S0, S1, … , Si
- We remove all but one list containing only the two special key
Click Here to Download CS301 Final term MAGA file By Arslan Ali