click below
click below
Normal Size Small Size show me how
Data structures
Data Structures and Algorithms
Question | Answer |
---|---|
A ___________ is a way of organizing, storing, and performing operations on data. | data structure |
A ___________ is the data structure that stores subitems, often called fields, with a name associated with each subitem. | record |
An ___________ is a data structure that stores an ordered list of items, where each item is directly accessible by a positional index. | array |
A ___________ is a data structure that stores an ordered list of items in nodes, where each node stores data and has a pointer to the next node. | linked list |
A ___________ is a data structure in which each node stores data and has up to two children, known as a left child and a right child. | binary tree |
A ___________ is a data structure that stores unordered items by mapping (or hashing) each item to a location in an array. | has table |
A ______ is a tree that maintains the simple property that a node's key is greater than or equal to the node's childrens' keys. A min-heap is a tree that maintains the simple property that a node's key is less than or equal to the node's childrens' keys. | max-heap |
A ___________ is a data structure for representing connections among items, and consists of vertices connected by edges. A vertex represents an item in a graph. An edge represents a connection between two vertices in a graph. | graph |
An ___________ describes a sequence of steps to solve a computational problem or perform a calculation | algorithm |
A ___________ specifies an input, a question about the input that can be answered using a computer, and the desired output. | computational problem |
___________ are a set of problems for which no known efficient algorithm exists. | NP-complete problems |
An ___________ is a data type described by predefined user operations, such as "insert data at rear," without indicating how each operation is implemented. | abstract data type (ADT) |
A ___________ is an ADT for holding ordered data. | list |
A ___________ is an ADT for holding ordered data and allowing indexed access. | dynamic array |
A ___________ is an ADT in which items are only inserted on or removed from the top of a stack. | stack |
A ___________ is an ADT in which items are inserted at the end of the queue and removed from the front of the queue. | queue |
A ___________ (pronounced "deck" and short for double-ended queue) is an ADT in which items can be inserted and removed at both the front and back. | deque |
A ___________ is an ADT for storing items in which the order does not matter and duplicate items are allowed. | bag |
A ___________ is an ADT for a collection of distinct items. | set |
A ___________ is a queue where each item has a priority, and items with higher priority are closer to the front of the queue than items with lower priority. | priority queue |
A ___________ is an ADT that associates (or maps) keys with values. | dictionary |
Algorithm ___________ is typically measured by the amount of resources used by the algorithm. | efficiency |
An algorithm's ___________ is a function, T(N), that represents the number of constant time operations performed by the algorithm on an input of size N. | runtime complexity |
An algorithm's ___________ is the scenario where the algorithm does the minimum possible number of operations. | best case |
An algorithm's ___________ is the scenario where the algorithm does the maximum possible number of operations. | worst case |
An algorithm's ______________________ is the space complexity not including the input data. | auxiliary space complexity |