This course provides a conceptual framework within which both theoretical and concrete analyses of computer algorithms may be developed. Topics to be covered include nuber-theoretic algorithms; graph algorithms; problem-solving techniques including divide-and-conquer, greedy algorithms, and dynamic programming; linear programming; and intractability. The required credit-bearing laboratory COSC 302L must be taken concurrently with COSC 302. Prerequisites: COSC 290 or permission of instructor. (Formerly COSC 460.)
|