Weekly Homework Assignments
#1 due Thurs., Jan. 31 | 1.2-2, 1.2-3, 1-1 (complete table for the functions n, n^2, and 2^n only), and 2.1-1 |
#2 due Thurs., Feb. 14 | 2.2-1, 2.3-1, 2.3-4, 2-1, 3.1-4, 3-2 a,b,d,e, 4.1-1, 4.1-2 |
#3 due Tues., Feb. 26 | 4.2-1, 4.2-2, 4.2-3, 4.2-4, 4.3-1, 4.3-2, 4-1 |
#4 due Tues., Mar. 5 | 6.1-5, 6.1-6, 6.2-1, 6.2-2, 6.3-1, 6.4-1 |
#5 due Thurs., Mar. 14 | 6.5-1, 6.5-2, 6.5-3, 7.1-1, 7.1-2, 7.1-3 |
#6 due Thurs., Mar.21 | 7.2-1, 7.2-2, 7.2-3, 7.4-1, 7-3 |
#7 due Thurs., Apr. 4 | 8.1-1, 9.2-4, 9-1 |
#8 due Thurs., Apr. 11 | 9.3-1 (groups of size 7 only), 9.3-5, 15.2-1, 15.2-2, 15.2-3 |
#9 due Thurs., Apr. 18 | worksheet handed out in class |
#10 due Thurs., Apr. 25 | 15.4-5, 22.2-2, 22.2-6, 22.3-2 |
#11 due Thurs., May 9 | worksheet handed out in class |
Catalog Description | Prerequisites: Math 150B and 262 and some computer programming experience. Computer oriented study of semi-numerical and non-numerical algorithms. Sorting, tree searching, generation of combinatorial structures, algorithm proof techniques, best algorithms, programming complexity. |
Textbook | Introduction to Algorithms, Second Edition, by T. Cormen, C. Leiserson, R. Rivest, and C. Stein, published by McGraw-Hill, 2001. |
Important Dates | Exams will be given on March 5 and April 30. The cumulative final exam will be given on May 21, 12:45-2:45. No makeup exams will be given. |
Course Outline | Chapters 1 - 2 Introduction Chapter 3 Growth of Functions Chapter 4 Recurrences Chapter 5 Probabilistic Analysis and Randomized Algorithms Chapter 6 Heapsort Chapter 7 Quicksort Chapter 8 Lower Bounds for Sorting (8.1) Chapter 9 Medians and Order Statistics Chapter 15 Dynamic Programming Chapter 22 Elementary Graph Algorithms Chapter 23 Minimum Spanning Trees Chapter 24 Single-Source Shortest Paths Chapter 25 All-Pairs Shortest Paths Chapter 31 Number-Theoretic Algorithms (time-permitting) Chapter 32 String Matching (time-permitting) Chapter 34 NP Completeness Chapter 35 Approximation Algorithms (time-permitting) |
Course Objectives | To provide the students with a comprehensive introduction to the
modern study of computer algorithms.
For the students to: (1) Become familiar with the design, analysis, and application areas of
standard algorithms for such problems as sorting a sequence of numbers and
searching a graph as well as numerous others.
|
Techniques Used to Obtain Course Objectives | Lectures will be used to present new material. Students are expected to actively participate in this course - reading relevant sections in the textbook, doing all assigned problems, and asking and answering questions during class. Short quizzes will be given on occasion. Weekly homework will be assigned and collected during class. |
Assignments | Students are encouraged to work in groups outside of class, but each
student must write up all assignments in his or her own words.
All sources of
assistance (including classmates, family members, friends, colleagues,
books, websites, etc.)
must be acknowledged in the write-up of solutions.
Late work is highly discouraged, given no feedback, and drastically marked down according to the formula below, WITH NO EXCEPTIONS. LATE SCORE = x/n, where x = lowest score given on assignment and n = number of days late. Example: Suppose you turn in your assignment, which had been worth 10 points, 2 days late. The lowest score given on the assignment was 3 points. Your score would thus be 3/2 = 1.5 points, even if your work had been perfect. No feedback will be given on late work. |
Class Attendance Policy | Class attendance is an essential part of this course.
Missing class is highly discouraged. However, if an absence is unavoidable, it is your responsibility to ask your classmates what you missed. (Advice: Get the phone numbers and/or e-mail addresses of at least two classmates.) |
Grading Policy | Your course grade will be based on exams, homework, quizzes, and in-class
work. These are weighted as follows:
Midterm exams (2) 25% each
Course grades will be assigned as follows: 90-100% A
Cutoffs for “plus” and “minus” grades will be determined at the end of the semester. |
This information is subject to revision. |