Unit 10: Data Structures and Algorithms Flashcards

1
Q

Is a way of organizing, storing, and performing operations on data. Operations performed on a data structure include accessing or updating stored data, searching for specific data, inserting new data, and removing data.

A

Data structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Is the data structure that stores subitems, often called fields, with a name associated with each subitem.

A

Record

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

A data structure that stores an ordered list of items, where each item is directly accessible by a positional index.

A

Array

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

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.

A

Linked list

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

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

A

Binary tree

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Is a data structure that stores unordered items by mapping (or hashing) each item to a location in an array.

A

Hash table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

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

max-heap

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Is a tree that maintains the simple property that a node’s key is less than or equal to the node’s childrens’ keys

A

mini-heap

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Is a data structure for representing connections among items, and consists of vertices connected by edges

A

Graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Represents an item in a graph.

A

Vertex

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Represents a connection in a graph.

A

Edge

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Describes a sequence of steps to solve a computational problem or perform a calculation.

A

Algorithm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Specifies an input, a question about the input that can be answered using a computer, and the desired output.

A

Computational problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Problems are a set of problems for which no known efficient algorithm exists.

A

Np-complete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Efficient algorithm

A

is one whose runtime increases no more than polynomially with respect to the input size.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

A data type described by predefined user operations, such as “insert data at rear,” without indicating how each operation is implemented.

A

Abrstract data type (ADT)

17
Q

An ADT for holding ordered data. Common underlyning data structures: Array, linked list

A

List

18
Q

An ADT for holding ordered data and allowing indexed access.Common underlyning data structures: Array

A

Dynamic array

19
Q

An ADT in which items are only inserted on or removed from the top of a stack.Common underlyning data structures: Linked list

A

Stack

20
Q

An ADT in which items are inserted at the end of the queue and removed from the front of the queue.Common underlyning data structures: Linked list

A

Queue

21
Q

(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. Common underlyning data structures: Linked list

A

Dqueue

22
Q

An ADT for storing items in which the order does not matter and duplicate items are allowed. Common underlyning data structures: Linked list, Array

A

Bag

23
Q

An ADT for a collection of distinct items.Common underlyning data structures: Binary tree, hash table

A

Set

24
Q

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.Common underlyning data structures: Heap

A

Priority queue

25
Q

An ADT that associates (or maps) keys with values.Common underlyning data structures: Hash table, binary search tree

A

Dictionary (map)

26
Q

To have a user interact with an item at a high-level, with lower-level internal details hidden from the user.

A

Abstraction

27
Q

The amount of resources used by the algorithm.

A

Computational complexity

28
Q

Typically measured by the algorithm’s computational complexity.

A

Algorithm efficiency

29
Q

A function, T(N), that represents the number of constant time operations performed by the algorithm on an input of size N

A

Runtime complexity

30
Q

The space complexity not including the input data

A

Auxillary space complexity

31
Q

Function that represents the number of fixed-size memory units used by the algorithm for an input of size N.

A

Space copmplexity