CS 253 – Algorithms and Data Structures - Course Syllabus Instructor: Bruce McMillin Rm 322 Computer Science Building 341-6435, [email protected] Office Hours: Monday 08:30-10:30 Wednesday 08:30-10:30

Course Objectives The purpose of this course is fourfold: 

Learn advanced algorithmic techniques and put them into practice



Build on the basic skills developed in CS 153 and 128



Learn and apply algorithm complexity and correctness analysis techniques



Develop Written Communication Skills within the Context of Computer Science

Intended Course Audience/Prerequisites The intended audience for this course is Computer Science Sophomores/Juniors who have completed each of the following courses: 

Discrete Mathematics, Proof Techniques, and Boolean algebra ( CSc-128 )



Data Structures I ( CSc-153 )

Course Materials Text:

Introduction to Algorithms, 3rd Edition, Cormen et. al., McGraw Hill

Handouts:

As required

Grading 18% Test I

-

18% Test II 18% Test III - Final Exam Week, 36% Program Assignments (4-6 assignments) 10% Quizzes, Board Work, Worksheets (in class at random)

The exams, programs, and quizzes receive grades based on the following scale: 89-100 A 77-88 B 65-76 C 53-64 D The final course grade is then a weighted average (according to the above table) of these individual grades.

Program Assignments Program assignments are due 1 week after being assigned unless otherwise stated in class. Some work may be in small groups (up to 3) and some work will be individual effort on the programming assignments. For each program, though, you must change group membership. Written reports will be required for each programming assignment. Late program assignments will be assessed a 10 point deduction per day and will not be accepted beyond one week of the assigned deadline. A program is considered late if it is not turned in when collected at the start of class. Revisions of assignments will be accepted on the writing portion only and will also be subject to a 10 point deduction per day with a minimum of one day’s penalty.

Homework Assignments Homework assignments will be given regularly and corrected, but not graded. It is up to you to do the homework. However, in borderline grade situations, if you've completed all the homework, you will receive the next higher grade for the course.

Quizzes Quizzes are over material we will cover that day, so it is in your best interest to read ahead.

Topic Schedule Topics

Weeks

Ch. 1: Algorithms: Algorithms, Complexity, Efficiency

½ week

Ch. 2: Basic Algorithm Design and Analysis : 2.1. Simple Algorithm & Invariants, 2.2. Run-time analysis, 2.3. Some algorithm design basics: the Divide and Conquer Approach

2 weeks

Ch. 3: Asymptotic Analysis: 3.1 Theta, big-Oh, Omega, 3.2. Common Functions and tricks, Appendix A. Math Techniques

1 week

Ch. 4: Recurrences:

1½ weeks

Ch. 6: Heapsort revisited: 6.1-6.4 - Design Correctness and Complexity

1½ weeks

CH. 15: Dynamic Programming:

2 ½ weeks

Ch. 16: Greedy Algorithms:

1 week

Ch. 22: Graph Algorithms: 22.1, Appendix B: Graph Theory for Computer Scientists, 22.2 Breadth First Search, correctness and complexity, 22.4 1½ weeks Depth First Search and Topological Sort, 22.5 Strongly Connected Components Ch. 23,24,25: Spanning Tree and Shortest Path Algorithms

1 ½ weeks

Ch. 26: Maximum Flow

1 ½ weeks

Ch. 34: Brief Introduction to NP Completeness and Undecidability

½ week

Course Requirements/Policies Attendance is required unless prior arrangements have been made. If an examination is missed for illness or unavoidable absence, a makeup examination will be given. For planned absences, programs should be turned in before the absence, rather than after. Other policies stated within University guidelines, including those as listed under Missouri S&T’s "Student Academic Regulations" are to be adhered to http://registrar.mst.edu/academicregs/index.html.

Attendance Regular attendance is required; if you miss more that 2 classes in a row, I will file an Academic Alert indicating you are not meeting the requirements for the course. If you miss over 7 classes during the semester and have less than an "A" average, you will be administratively dropped.

Campus Policies Academic Alert System: http://academicalert.mst.edu I will utilize the online Academic Alert System. The purpose of the Academic Alert System is to improve the overall academic success of students by improving communication among students, instructors and advisors; reducing the time required for students to be informed of their academic status; and informing students of actions necessary by them in order to meet the academic requirements in their courses. Disability Support Services: http://dss.mst.edu Any student inquiring about academic accommodations because of a disability should be contact Disability Support Services so that appropriate and reasonable accommodative services can be determined and recommended. Disability Support Services is located in 204 Norwood Hall. Their phone number is 3414211 and their email is [email protected]. Instructors may consider including the following statement on their course syllabus as a means of informing students about the services offered: "If you have a documented disability and anticipate needing accommodations in this course, you are strongly encouraged to meet with me early in the semester. You will need to request that the Disability Services staff send a letter to me verifying your disability and specifying the accommodation you will need before I can arrange your accommodation." Academic Dishonesty: http://registrar.mst.edu/academicregs/index.html Page 30 of the Student Academic Regulations handbook describes the student standard of conduct relative to the System's Collected Rules and Regulations section 200.010, and offers descriptions of academic dishonesty including cheating, plagiarism or sabotage. A description of the process for dealing with issues related to academic dishonesty, is available on-line at http://ugs.mst.edu . If you have any questions about the Campus Policies information listed above, please contact the Office of Undergraduate Studies at 573-341-7276.

CS 253 – Algorithms and Data Structures - Course Syllabus

Instructor: Bruce McMillin. Rm 322 Computer Science Building. 341-6435, ff@mst.edu. Office Hours: Monday. 08:30-10:30. Wednesday. 08:30-10:30. Course Objectives. The purpose of this course is fourfold: • Learn advanced algorithmic techniques and put them into practice. • Build on the basic skills developed in CS 153 ...

23KB Sizes 1 Downloads 64 Views

Recommend Documents

CS 253 – Algorithms and Data Structures - Course Syllabus
Program assignments are due 1 week after being assigned unless otherwise stated in class. Some work may be in small groups (up to ... Ch. 34: Brief Introduction to NP Completeness and Undecidability. ½ week. Course Requirements/Policies ... I will u

CS 124 Algorithms and Data Structures Overview
People from all concentrations. (mathematics, biology, physics, economics…) welcome. • Assignments are theoretical/mathematical, but also have programming ...

CS 124 Algorithms and Data Structures Overview
CS 124. Algorithms and Data Structures. Overview. Michael Mitzenmacher. Page 2. Course Goal. • Provide a solid background in algorithms and data structures, ...

ReadDownload Data Structures, Algorithms, and ...
ReadDownload Data Structures, Algorithms, and. Software Principles in C EBOOK Full book. Book Synopsis ... data structures and algorithm analysis. Important ...

Course Code : CS-62 Course Title : 'C' Programming & Data ...
If you have any query just email us at www.ignoufriend.blogspot.com Email : [email protected]. Course Code : CS-62. Course Title : 'C' Programming ...

Data Structures and Algorithms in Java
his own software company, and is a best-selling writer in the field of computer programming. ..... In the Cardfile program, each card represents a record. A record ...