The questions of Test_3
Mark correct and
incorrect assertions about dictionary ADT.
(yes) Dictionary with linear ordering of keys is called ordered
dictionary.
(no) A log file is a dictionary implemented by means of a sorted
sequence.
Let us have an ordered dictionary
ADT with n elements. Mark correct/incorrect triple:
implementation - operation - running time.
(yes) Log File - keys - O(n)
(no) Lookup Table - findAll
- O(1)
Let us have an ordered dictionary
ADT with n elements, implemented by means of a hash table.
Mark correct/incorrect assertions concerning operations and their
running times:
(yes) keys runs
in O(n) time
(no) elements runs in O(1)
time
A simple open
addressing strategy for collision handling in hash tables is linear probing. Let us have
a bucket array A =
{35,14,D,21,E,12,E} with capacity N = 7, where E means "empty" and D means "deattached"
(or "available") item. The hash function is h(k) = k
mod 7. Find the correct/incorrect correspondence, where -> means "is
equivalent to".
(yes) insrtItem(7) ->
A[2] = 7
(no) insrtItem(38) ->
A[3] = 38
Double hashing is a method for
resolving collisions in hash tables. Let us have the following
sequence of keys: 18, 11, 4, 10, 8, 15, bucked array of size
N, hash function h(x) = x mod
N and secondary hash function d(k) = M
- k mod M. Determine the correct/incorrect
placements of keys in the array cells.
(yes) N = 7, M = 5 - 8
11 0 10 18 4 15
(no) N = 14, M = 5 - 15 0 0
0 18 4 0 0 8 0 10 11 0 0
Class BinarySearchTree
contains the following member function (Code Fragment 9.3):
void setItem(const
BTPosition& p,
const BSTItem& i) const
{
/*add*/
p.element().setKey(i.key());
p.element().setElement(i.element());
}
Mark the correct/incorrect assertions about this function.
(yes) This function places an Item of BST (dictionary) at
position p in a LinkedBinaryTree.
(no) Replacing /*add*/ with Item<Key,
Element> ii = i; is a
syntax error.
Let us have an AVL tree ADT in parenthetic
string representation
44(17(-,32),78(50(48,62),88)).
External nodes are not included in this representation.
Determine the correct/incorrect resulting AVL tree after
applying the corresponding operation.
(yes) insertItem(54)
44(17(-,32),62(50(48,54),78(-,88)))
(no) insertItem(54)
44(17(54,32),78(50(48,62),88))
Class Position is included
in the definition of class BinarySearchTree (Code Fragment 9.2). Mark the correct/incorrect
assertions about the member function
Element& element()
{
return btPos.element().element();
}
in the class Position.
(yes) The return value is a reference to a data member of Item object.
(no) btPos is a data member in BinarySearchTree class.
Look at the part of the realization
of the AVL trees, given in Code
Fragment: AVLTree1 and define the following
statements as "true" or "false."
(yes) Every object of class AVLTree<K,E>
is an object of class BinarySearchTree<K,E,Item<K,E>
>.
(no) The function height(p)
returns the height of the binary tree.
Mark the correct/incorrect
definitions and assertions about search
trees.
(yes) Keys stored at nodes in the left subtree of a node v (of a search tree) are less then or
equal to the key at v.
(no) Each internal node of a (2,4)
tree has at least four children.
Let us have a (2,4) tree ADT in parenthetic
string representation
T={12}({3,6,9},{15}).
External nodes are not included in this representation. Determine
the correct/incorrect resulting (2,4) tree after applying the
corresponding operation.
(yes) insertItem(1) -
T={12,6}({1,3},{9},{15})
(no) insertItem(1) -
T={12,3}({1,6,9},{15})
Let us have a (2,4) tree ADT in parenthetic
string representation
T={10,15,24}({2,8},{12},{18},{27,32,35}).
External nodes are not included in this representation. Determine
the correct/incorrect resulting (2,4) tree after applying the
corresponding operation.
(yes) removeElement(24) -
T={10,15,27}({2.8},{12},{18},{32,35})
(no) removeElement(2) -
T={10,15,24}({8,12},{18},{27,32.35})
Let us have a red-black tree ADT in parenthetic string
representation, where black
nodes are bold, and red nodes are italic. External nodes are
not included in this representation. Determine the
correct/incorrect resulting red-black tree after applying the
corresponding operation.
(yes) 6(8) - insertItem(7) - 7(6,8)
(no) 6(8) - insertItem(9) - 6(8,9)
Let us have a red-black tree ADT in parenthetic string
representation, where black
nodes are bold, and red nodes are italic. External nodes are
not included in this representation. Determine the
correct/incorrect resulting red-black tree after applying the
operation removeElement.
(yes) 4(2,7(6))
- removeElement(7)
- 4(2,7)
(no) 4(2,7(6)) -
removeElement(9) - 4(6,7)
Look at the Code Fragment: RBTree3 and determine
whether the following statements are true.
(yes) The function parent is
defined in the class implementing binary tree ADT.
(no) The function setBlack is
defined in the base class.