ALGORITHMS EXAM 2024 ACTUAL
EXAM 2 VERSIONS (VERSION A AND
B) COMPLETE 500 QUESTIONS WITH
DETAILED VERIFIED ANSWERS
/ALREADY GRADED A+
VERSION A
Push and pop operate have runtime O(logN). All
other operations (Peek, IsEmpty, GetLength)
happen in constant time O(1). -
....ANSWER...Implementing priority queues with
heaps.
A list ADT implemented using an array. An array-
based list supports the common list ADT
operations, such as append, prepend, insert after,
remove, and search. - ....ANSWER...Array based list
,If a program requires fast insertion of new data, a
linked list is a better choice than an array. -
....ANSWER...Linked list vs Array
A data type described by predefined user
operations, such as "insert data at rear," without
indicating how each operation is implemented. -
....ANSWER...Abstract Data Type (ADT)
An ADT for holding ordered data. Dups ok
Sequence type: A mutable container with ordered
elements.
Underlying data structures: Array, linked list -
....ANSWER...List
generic class that supports different data types.
declared as follows, where T is the data type. -
....ANSWER...Array in Java
Sequence type: An immutable container with
ordered elements. - ....ANSWER...Tuple
,An ADT in which items are only inserted on or
removed from the top of a stack.
*Last-in First-Out
Underlying data structures: Linked list
Push(stack, x), pop(stack), peek(stack),
IsEmpty(stack), GetLength(stack)
*Pop & peek should not be used on a empty stack.
-
....ANSWER...Stack
Example starting with stack: 99, 77 (top is 99).
Push(stack, x)
Inserts x on top of stack
Push(stack, 44). Stack: 44, 99, 77
Pop(stack)
Returns and removes item at top of stack
Pop(stack) returns: 99. Stack: 77
, Peek(stack)
Returns but does not remove item at top of stack
Peek(stack) returns 99. Stack still: 99, 77
IsEmpty(stack)
Returns true if stack has no
items IsEmpty(stack) returns
false.
GetLength(stack)
Returns the number of items in the stack
GetLength(stack) returns 2. - ....ANSWER...Stack
operations
Can be implemented in Python using a class with
a single LinkedList data member.
The class has two methods, push() and pop().
push() adds a node to the top of the stack's list by
calling LinkedList's prepend() method.
*New elements are place on the top of the stack,
not at the bottom of the stack.