What is an algorithm?
What is a parameter?
- eg; for finding a value (x) in a list (s) of size (n) there would be the 3 parameters x, s and n
What is a problem?
A question we seek to answer
What is a solution?
Answer to the question asked in that instance
What is an Instance?
-Each specific assignment of values to the parameters is called an instance of the problem (each time problem is defined with values)
What are the primary and secondary interests of efficiency?
How important are algorithms and choosing the right one?
Wat is the point in algorithmic analysis?
What is algorithm performance?
What is big-o notation?
What are the rules of Big-o notation?
What is the order of efficiency measures in big-o notation?
-fastest to slowest:
0(1), O(logn), O(N), O(NlogN), O(N^2), O(N^3), O(2^N), O(N!)
How do we simplify Big-O expressions?
- discard lesser terms
What else can be measured using big-o?
- some algorithms may be equal on time but may consume more memory
What is big O concerned with and what does it to a function?
- puts asymptotic upper bound on function
What is Omega?
What is theta?
-intersection between omega and big O
What is a problem with growth rate measuring?
What is a mistake many people confuse with UB, LB and best/worst case?
What is a misconception people have with best and worst case?
- best and worst case instances exist for each possible size of input
What is the issue with a fast algorithm? How do we chose algorithms?
What is the difference between decomposition and recursive decomposition?
- Recursive decomposition problem into smaller version of the same problem
What properties must problems have to be solved recursively?
What is the base case?
-simplest version of problem that can be solved