unit 10 vocab Flashcards
(18 cards)
sequencing
putting steps in an order
selection
deciding which steps to do next
iteration
doing steps over and over
problem
a general description of a task that can (or cannot) be solved with an algorithm
efficiency
a measure of how many steps are needed to complete an algorithm
algorithm
a finite set of instructions that accomplish a task
linear search
a search algorithm which checks each element of a list in order, until the desired value is found or all elements in the list has been checked
binary search
a search algorithm that starts at the middle of a sorted set of numbers and removes half of the data; this process repeats until the desired value is found of all elements have been eliminated
reasonable time
algorithms with a polynomial efficiency or lower (constant linear, square cube, ect.) are said to run in a reasonable amount of time (linear ,log , polynomials)
unreasonable time
algorithms with exponential or factorial efficiencies are examples of algorithms that run in an unreasonable amount of time (exponential)
heuristic
provides a “good enough” solution to a problem when an actual solution is impractical or impossible
undecidable problem
a problem for which no algorithms can be constructed that is always capable of providing a correct yes or no answer
optimization problem
where the goal is to find the “best” solution from a set of potential solutions
decision problem
a problem with a yes or no answer
sequential computing
programs run in order, on command at a time
parallel computing
programs are broken into small pieces, some of which are run simultaneously
distributed computing
programs are run by multiple devices
speedup
the time used to complete a task sequentially divided by the time to complete a task in parallel computing