Fundamentals of Data Structure and Algorithms Flashcards

Preliminary (1 of 3 handouts)

1
Q

special format for storing and organizing data

A

data structure

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

2 types of data structure:

A

linear and non-linear

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

a type of data structure where elements are accessed in sequential order

A

linear

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

a type of data structure where elements are accessed in non-sequential order

A

non-linear

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

logical description of how data is viewed as well as the operations that are allowed without regard to how they will be implemented.

A

abstract data type (ADT)

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

benefits of using ADT:

A

code is easier to understand, implementations can be changed without requiring changed to the program that uses ADT, and this can be used in future programs

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

2 parts of abstract data type:

A

public or external and private or internal

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

data and the operations

A

public or external ADT

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

representations and implementations

A

private or internal ADT

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

9 abstract data types:

A

linked list
stack
queue
tree
priority queue
heap
set
map
graph

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

storing elements where each is a separate object

A

linked list

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

last element added is the first element retrieved or removed

A

stack

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

first element added is the first element retrieved or removed

A

queue

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

hierarchical nature of a structure in a graphical form

A

tree

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

elements are processed based on their order

A

priority queue

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

binary tree where the value of each parent node is either higher or lower than the value of its child nodes

A

heap

17
Q

collections of elements where each element is unique

A

set

18
Q

set of ordered pairs where elements are known as keys (identifiers) and values (content)

A

map

19
Q

graph

A

consists of a set of vertices (nodes) and a set of edges (relations) between the pair of vertices

20
Q

4 main operations of ADT:

A

initializing, adding, accessing, removing of data

21
Q

set of instruction to be executed in sequence for solving a problem

A

algorithm

22
Q

characteristics of an algorithm:

A

finiteness, definiteness, input, output, uniqueness

23
Q

a characteristic of an algorithm where it must terminate after a specified number of steps

A

finiteness

24
Q

a characteristic of an algorithm where instructions has to be clear and unambiguous

A

definiteness

25
Q

a characteristic of an algorithm where it should have zero or more well-defined data given before the algorithm starts

A

input

26
Q

a characteristic of an algorithm where it must have zero or more results

A

output

27
Q

a characteristic of an algorithm where the result of each step depends on the input and/or the result of the previous step

A

uniqueness

28
Q

elements of an algorithm:

A

sequential operations, actions based on the state of a data structure, iteration, recursion

29
Q

repeating an action multiple times

A

iteration

30
Q

function that calls itself once or multiple times to solve a problem

A

recursion

31
Q

algorithm design paradigms:

A

divide and conquer, greedy algorithms, dynamic programming