This unit provides an introduction to the design techniques that are used to find efficient algorithmic solutions for given problems. The techniques covered included greedy, divide-and-conquer, dynamic programming, and adjusting flows in networks. Students will extend their skills in algorithm analysis. The unit also provides an introduction to the concepts of computational complexity and reductions between problems.
Classes
lectures, tutorials
Assessment
through semester assessment (40%), final exam (60%)
Assumed knowledge
MATH1004 OR MATH1904 OR MATH1064
COMP2123 OR COMP2823 OR INFO1105 OR INFO1905
ProhibitionsCOMP2007 OR COMP2907 OR COMP3927
Semester 1
05 Mar 2018