WGU C949 Exam with complete
solutions latest version
Array - CORRECT ANSWER-A data structure that stores an ordered list of items, with
each item is directly accessible by a positional index.
Linked List - CORRECT ANSWER-A data structure that stores ordered list of items in
nodes, where each node stores data and has a pointer to the next node.
Bianary Search Tree - CORRECT ANSWER-A data structure in which each node stores
data and has up to two children, known as a left child and a right child.
Hash Table - CORRECT ANSWER-A data structure that stores unordered items by
mapping (or hashing) each item to a location in an array (or vector).
Hashing - CORRECT ANSWER-mapping each item to a location in an array (in a hash
table).
Chaining - CORRECT ANSWER-handles hash table collisions by using a list for each
bucket, where each list may store multiple items that map to the same bucket.
Hash key - CORRECT ANSWER-value used to map an index
bucket - CORRECT ANSWER-each array element in a hash table
ie A 100 elements hash table has 100 buckets
modulo hash function - CORRECT ANSWER-computes a bucket index from the items
key.
It will map (num_keys / num_buckets) keys to each bucket.
ie... keys range 0 to 49 will have 5 keys per bucket.
= 5
hash table searching - CORRECT ANSWER-Hash tables support fast search, insert,
and remove.
Requires on average O(1)
Linear search requires O(N)
BRAINSCAPE1
, BRAINSCAPE1
modulo operator % - CORRECT ANSWER-common has function uses this. which
computes the integer remainder when dividing two numbers.
Ex: For a 20 element hash table, a hash function of key % 20 will map keys to bucket
indices 0 to 19.
Max-Heap - CORRECT ANSWER-A binary tree that maintains the simple property that
a node's key is greater than or equal to the node's childrens' keys. (Actually, a max-
heap may be any tree, but is commonly a binary tree).
*a max-heap's root always has the maximum key in the entire tree.
Heap storage - CORRECT ANSWER-Heaps are typically stored using arrays. Given a
tree representation of a heap, the heap's array form is produced by traversing the tree's
levels from left to right and top to bottom. The root node is always the entry at index 0 in
the array, the root's left child is the entry at index 1, the root's right child is the entry at
index 2, and so on.
Max-heap insert - CORRECT ANSWER-An insert into a max-heap starts by inserting
the node in the tree's last level, and then swapping the node with its parent until no
max-heap property violation occurs.
The upward movement of a node in a max-heap is sometime called percolating.
Complexity O(logN)
Max-heap remove - CORRECT ANSWER-Always a removal of the root, and is done by
replacing the root with the last level's last node, and swapping that node with its
greatest child until no max-heap property violation occurs.
Complexity O(logN)
Percolating - CORRECT ANSWER-The upward movement of a node in a max-heap
Min-Heap - CORRECT ANSWER-Similar to a max-heap, but a node's key is less than
or equal to its children's keys.
Heap - Parent and child indices - CORRECT ANSWER-Because heaps are not
implemented with node structures and parent/child pointers, traversing from a node to
parent or child nodes requires referring to nodes by index. The table below shows
parent and child index formulas for a heap.
ie
1) parent index for node at index 12? 5
*** ((12-1) // 2) = 5 or 12 //2 -1 = 5
2) child indices for a node at index 6? 13 & 14
*** 2 * 6 + 1 = 13 and 2 * 6 + 2 = 14
**Double# and add 1, double# and add 2
BRAINSCAPE1