CSC 340 Algorithms
Spring 2019

Course Description

CSC 340 Algorithms (3.00)
Design and analysis of algorithms. Classification of algorithms by time and space complexity. Algorithm design techniques such as divide and conquer, the greedy method and dynamic programming. NP-complete problems and approximation algorithms. Programming may be required. Prerequisite(s): CSC 210; CSC 230; Junior standing or instructor consent.

Instructor Accessibility

You can email me at Office hours are Tuesdays and Thursdays 4:00- 5:00 pm in the part-timers office, by appointment.

Course Textbook

The following text book is required.

Sanjay Dasgupta, Christos Papadimitriou, Umesh Vazirani, Algorithms, 2008, McGraw Hill

Course Outline

This weekly schedule is tentative and is subject to change as the term progresses.

Week Chapter Course Topics
1 0, 2 Course Introduction, Big O, Divide and Conquer
2 3, 4 Graph Search
3 Backtracking Algorithms
4 Branch and Bound Algorithms
5 6 Dynamic Programming I
6 6 Dynamic Programming II
7 5 Greedy Algorithms
8 5 Paths in Graphs
9 7 Linear Programming and Network Flows
10 8, 9 Introduction to NP Complete Problems

Schedule of In-class Quizzes and Tests

All tests and quizzes will be on Thursdays unless otherwise announced. The exception is Quiz 1, which will be on Tuesday.

Class Event Date Percent Weight
Quiz 1 Week 2 5%
Quiz 2 Week 3 5%
Test 1 Week 5 12.5%
Test 2 Week 8 12.5%
Final Exam Week 11 25%

In addition to the tests, there will be a number of homework/ programming assignments. These will account for 40% of the course grade. They will be designed to help you understand course concepts and prepare you for the in-class quizzes and tests. Some of the questions on quizzes and tests may be open book so be sure to always bring your notes and text books.

All homework /projects must be submitted through the K drive. All homework must be typed: no hand-written work will be graded.

Late Policy

All assignments and programming (implementation) projects should be turned in by midnight on the day due. A 10% penalty will be assessed on (implementation) projects turned in late, but in general this penalty will not be levied if the project is turned in before I have started grading the batch of implementation projects. to which it belongs.

No implementation project turned in after the due date for the implementation project will be graded.

The exception to the above policy is the last implementation project, which must be turned in on the due date to be graded.

Homework assignments that are not implementation projects must be turned in on the due date. No late homework assignments will be accepted.

Policy on Missed Quizzes and Tests

In-class tests and quizzes missed without a legitimate excuse cannot be made up. If you have to miss a quiz or test (for some legitimate reason) please let me know at least a week before and I will make arrangements for a make up. In the event some unexpected reason beyond your control prevents you from being in class on the day of a test, contact me as soon as possible by phone or email to arrange a make up.

Ethics Policy / Academic Dishonesty.

No student should turn in for grading work that has been done by someone else, or work on which they have received help but which they do not understand. Any work turned in by a student will be considered to have been plagiarized if the student can not explain it when requested to do so by the instructor. It will also be considered to have been plagiarized if there is clear evidence that the work has been copied from another source, even if the student can explain it.