________ means that you can perform each operation precisely to solve the problem.
New cards
2
variable n
The ________ in an equation that describes the number of steps in an algorithm.
New cards
3
Definiteness
________ means that the steps are clear, concise, and unambiguous.
New cards
4
finite process
He (Donald Knuths) describes an algorithm as a definite, effective, and ________ that receives input and produces output based on this input.
New cards
5
Finiteness
________ means that the algorithm stops after a finite number of steps.
New cards
6
amount of memory a program
The ________ requires to store the data set.
New cards
7
Time complexity
________ is the maximum number of steps an algorithm takes to complete as n gets larger.
New cards
8
Temporary space
________ is the amount of memory your algorithm needs for intermediary processing, for example, if your algorithm needs to temporarily copy a list to transfer data.
New cards
9
big O notation
The ________ for exponential complexity is O (c** n), where c is a constant.
New cards
10
worst possible scenario
An algorithms best- case complexity is how it performs with ideal input, and an algorithms worst- case complexity is how it performs in the ________ for it.
New cards
11
Linear Time
________: The next most efficient type of algorithm is one that runs in ________.
New cards
12
Exponential scaling
________ is the reason why it is so important to create long passwords.
New cards
13
order of magnitude
A(n) ________ is a class in a classification system where each class is many times greater or smaller than the one before.
New cards
14
brute force algorithm
A(n) ________ is a type of algorithm that tests every possible option.
New cards
15
Constant Time
________: The most efficient order of magnitude is called constant time complexity.
New cards
16
amount of memory an algorithm
The ________ needs for intermediary processing, for example, if your algorithm needs to temporarily copy a list to transfer data.
New cards
17
amount of time it
The ________ takes a computer to execute an algorithm written in a programming language.
New cards
18
Big O notation
________ is a mathematical notation that describes how an algorithms time or space requirements (you will learn about space requirements later) increase as the size of n increases.
New cards
19
linear time
An algorithm runs in ________ when it grows at the same rate as the problems size.
New cards
20
big O notation
Computer scientists use ________ to create an order- of- magnitude function from T (n)
New cards
21
Constant Time
The most efficient order of magnitude is called constant time complexity
New cards
22
Logarithmic Time
Logarithmic time is the second most efficient time complexity
New cards
23
Linear Time
The next most efficient type of algorithm is one that runs in linear time
New cards
24
Log-Linear Time
An algorithm that runs in log-linear time grows as a combination (multiplication) of logarithmic and linear time complexities
New cards
25
Quadratic Time
After log-linear, the next most efficient time complexity is quadratic time