Big O Flashcards
A procedure or formula for solving a problem and finding an exact example, as opposed to a heuristic.
Algorithm
A general process that determines the amount of resources (such as time and storage) necessary to execute any particular algorithm, most commonly using Big O notation, such as O(N) or O(N^2).
Algorithm Analysis
A notation system used to classify algorithms. The primary notation levels are: O(1), O(log N), O(N), O(N log N), and O(N^2).
Big O Notation
In computing, __________ is defined in terms of the number of steps it takes to perform an algorithm in relation to the amount of data involved, or in terms of how much memory is required during the processing of the data. It is generally measured by the Order of Magnitude system, often called Big O.
Complexity
An algorithm is said to be O(1) time if the process does not depend on the size of the input, such as accessing any value of a contiguous array, a process that involves one step, regardless of the size of the array.
Constant Run Time
In a general sense, this is a term that is often effective, but not guaranteed to work in every case, as opposed to an algorithm, which is guaranteed to work in all cases.
Heuristic Solution
A level of algorithm complexity which requires the number of steps to be directly proportional to the size of the data structure in order to process, such as outputting all of the elements of an array, or performing a linear search on an array of values.
Linear Run Time
A level of complexities which requires the number of steps roughly equivalent to the log value (usually base 2) of the size of the data set.
Logarithmic Run Time
In the analysis process for algorithms, this is roughly the number of steps, or amount of memory it takes in order for the algorithm to execute, most often expressed using the Big O notation system, using O(1), O(N), and O(N^2) as the primary levels of complexity.
Order of Magnitude
A level of complexity of an algorithm that is characterized by a nested loop process, taking roughly N^2 steps to complete. So, for an array size of 10 items, it would take roughly 100 steps to complete the process.
Quadratic Run Time