1/47
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Execute them and produce desired outcomes
Algorithms are implemented in various programming languages, enabling computers.
Modularity
described as breaking down a problem into small-small modules or steps.
Scalability
quality of a good algorithm that ensure it can handle larger data sets without a significant decrease in performance.
Efficiency
the quality of a good algorithm that perform its task quickly and use minimal resources.
Functionality
factor of an algorithm that consider various logical steps to solve a real-world problem.
Limitations
disadvantage of algorithms relates to the fact that some problems may not have efficient solutions.
Reliability
the quality of a good algorithm that is defined as its ability to consistently deliver correct results under different conditions.
Algorithmic complexity
The amount of time required by an algorithm for a specific input size.
The complexity of the underlying algorithm
is considered a significant factor in an algorithm's complexity.
To describe the limiting behavior of an algorithm's running time as the input size grows
the purpose of asymptotic analysis.
Worst, Best, and Average.
the three types of time required by an algorithm.
Worst case
is most commonly used when analyzing an algorithm.
The upper bound of an algorithm's running time, or the worst-case scenario -
Big O notation (O) represent
The best-case time complexity, or the lower bound of an algorithm's running time
Big Omega notation (Ω) represent
A tight bound that expresses both the lower and upper bounds of an algorithm's running time.
-Big Theta notation (Θ) represent.
A binary search.
an example of an algorithm with O(log n) time complexity.
Linear
example of time complexity is O(n).
Maintainability
factor of an algorithm means it should be designed in a straightforward, structured way to avoid significant changes when it is redefined.
Optimality
The quality of a good algorithm that involves striving for the most efficient solution within given constraints.
Robustness
the term for an algorithm's ability to handle unexpected inputs or errors gracefully without crashing.
Reproducibility
advantage of algorithms related to them yielding consistent results when provided with the same inputs.
Clarity
quality of a good algorithm makes it easy to understand and comprehend.
Extensibility
factor of an algorithm is defined by its ability to be used by another algorithm designer or programmer.
Simplicity
the quality of a good algorithm that relates to keeping it as simple as possible while still meeting its requirement.
Efficiency
advantage of algorithm is related to streamlining processes, leading to faster and more optimized solutions.
Adaptability
the term for an algorithm's ability to be applied to a range of related problems with minimal adjustments.
The amount of memory it requires as a function of the input size.
Is the space complexity of an algorithm?
They provide a guarantee on the algorithm's performance in the worst-case scenario.
Why are upper complexity bounds, like Big O notation, particularly important?
Accessing an element in an array by index.
An example of a constant time (O(1)) operation
What does it mean if an algorithm has constant space complexity, O(1)?
The amount of memory required remains constant regardless of the input size.
serves as a set of commands for a computer to perform tasks
primary purpose of an algorithm.
flowchart or pseudocode
one way to represent an algorithm
Input, Processing Unit, Output
three main parts of an algorithm
Output
referred to as the "outcome or result of the program".
Efficiency
a key aspect of algorithms that aims to accomplish tasks quickly with minimal resources.
Backtracking Algorithm
is a trial-and-error technique that explores potential solutions by undoing choices when they lead to an incorrect outcome.
To arrange elements in a specific order
The purpose of a Sorting Algorithm
It exhaustively tries all possible solutions
the approach of Brute Force Algorithm to solve its problem of high time complexity.
Divide and Conquer Algorithm
breaks a complex problem into smaller subproblems, solves them independently, and then combines their solutions.
ransforms data into a secure, unreadable form
the primary function of an Encryption Algorithm.
finds a global optimum
the goal of a Greedy Algorithm
Optimization
algorithm designers constantly seek to do to make algorithms faster and more reliable.
Numbers, text, or images
some examples of input formats for an algorithm.
aid in the understanding of scalability
The key reason for using an algorithm, especially when dealing with a sizable real-world problem.
Randomized Algorithm
utilizes randomness in its steps to achieve a solution?
breaks a problem into smaller, similar subproblems and repeatedly applies itself
the main characteristic of a Recursive Algorithm.
convert data into a fixed-size hash value
The purpose of a Hashing Algorithm.
store and reuse intermediate results to avoid redundant computations
The key feature of a Dynamic Programming Algorithm.