CMPS 101-02 Algorithms & Abstract Data Types Winter 2019

Class Description

Studies basic algorithms and their relationships to common abstract data types. Covers the notions of abstract data types and the distinction between an abstract data type and an implementation of that data type. The complexity analysis of common algorithms using asymptotic (big "O") notation is emphasized. Topics include sorting and searching techniques, basic graph algorithms, and algorithm design techniques. Abstract data types covered include priority queues, dictionaries, disjoint sets, heaps, balanced trees, and hashing. Familiarity with C, Java, and Unix is assumed. Prerequisite(s): course 12B or 13H; CMPE 16 or 16H; MATH 19B, 20B or 11B; and one course from the following: MATH 21, 22, 23A, or AMS 10.

Class Meeting Times

Lecture

Monday/Wednesday/Friday 2:40pm-3:45pm Thimann Lecture Hall 3

Lab Sections

tbd

NOTE: sections do not meet first week of class.

(schedule is tentative and will be determined in first week)

02A Mondays 5:00PM - 7:00PM Jack Baskin Engineering 109
02B Tuesdays 3:00PM - 5:00PM Jack Baskin Engineering 109
02D Thursdays 1:00PM - 3:00PM Jack Baskin Engineering 109
02E Fridays 11:00AM - 1:00PM Jack Baskin Engineering 109

MSI Tutoring Sections (Optional)

Schedule tbd

Instructor

Delbert D. Bailey (ddbailey@ucsc.edu)
Office: E2-249A
Office Hours: Monday/Wednesday 4:00pm-5:30pm and by appointment.

Teaching Assistants

Alan Antonio Peral Ortiz (alan.peralortiz@ucsc.edu)
Office: E2 586
Office Hours: Tuesday 8:00am-9:00am

Noujan Pashanasangi (npashana@ucsc.edu)
Office: E2 586
Office Hours: Thursday 4:00pm-5:00pm

MSI Support

Sinclair Liang (wliang13@ucsc.edu) - Learning Assistant

Textbook

Introduction to Algorithms, 3rd Edition, by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein.
Alternatively, you may use the 2nd edition. The differences are not critical to this course.

Syllabus (tentative subject to change)

Examination Schedule

Midterm 1 Monday, February 4
Midterm 2 Monday, February 25
Final Tuesday, March 19 4:00PM - 7:00PM

All the exams are in the classroom. The examination schedule is fixed. In particular, requests for changes in the schedule will not be accommodated; if you have conflicts with this schedule, please do not enroll in the class. Also, no time extension will be given for late arrivals.

Evaluation

Homework (10%)
Program Assignments (20%)
Midterm Exam(s) (30%)
Final Exam (40%)

N.B. A passing grade on all factors of the evaluation is necessary to pass this class. This means, if you fail any one of the components of the evaluation (homework, program assignments, midterms, or final), you will not pass. This policy is intended primariliy to prevent students from "blowing off" any of the required work because it only counts for a small percentage of the grade.

Academic Integrity

No form of academic dishonesty will be tolerated. Incidents of academic dishonesty will be reported according to UCSC's policy on academic integrity, the full text of which can be found at Academic Misconduct Policy for Undergraduates . Specifically, if you are caught submitting work as your own in this class, that is not solely your own, or assisting others in doing so, a formal written report will be sent to your Department, the School of Engineering, and to your Provost and academic preceptor. Furthermore you will get a failing grade for the course and the incident will be noted in your evaluation.

Student Accommodations Requests

UC Santa Cruz is committed to creating an academic environment that supports its diverse student body. If you are a student with a disability who requires accommodations to achieve equal access in this course, please submit your Accommodation Authorization Letter from the Disability Resource Center (DRC) to me privately during my office hours or by appointment, preferably within the first two weeks of the quarter. At that time, we can also discuss ways we can ensure your full participation in the course. We encourage all students who may benefit from learning more about DRC services to contact DRC by phone at 831-459-2089 or by email at drc@ucsc.edu.

Communications

We will use Canvas to make general announements and provide forums to answer clearification questions on homework assignments but not solutions. Questions on how to solve specific homework problems are to be addressed in the Discussion Sections and in office hours. Do not allow other students to read or copy your solutions and do not read or copy solutions of others.