GVSU CIS 263

Week 12 / Day 1

Big-O for divide and conquer

Week 12 / Day 2

Dynamic Programming

Sometimes the algorithm naturally repeats work. Make sure you save it instead of repeat it.

optimal_parens(start, end) {
  for i = start to end {
     a = optimal_parens(start, i) 
     b = optimal_parens(i + 1, end)
     c = cost of (start, i)*(i, end) 
     cost = a + b + c
     min = minimum(cost, min)
  }
return min
}