DRAFT: Everything on this course’s web site is currently a draft, and subject to revision before the start of the semester.
Welcome: In this course, each voice in the classroom has something of value to contribute. Please take care to respect the different experiences, beliefs and values expressed by students and staff involved in this course. My colleagues and I support UMass’s commitment to diversity, and welcome individuals regardless of age, background, citizenship, disability, sex, education, ethnicity, family status, gender, gender identity, geographical origin, language, military experience, political views, race, religion, sexual orientation, socioeconomic status, and work experience.
Course description: COMPSCI 186 introduces foundational abstract data types and algorithms. The main focus is on the use of data structures in designing and developing programs to solve problems in a variety of domains. Specific topics include lists, sets, maps, graphs, stacks, queues, searching, and sorting. There will be weekly programming assignments, programming and written exercises in discussion sections, regular quizzes, and a cumulative final exam. This course is not a substitute for COMPSCI 187. If unsure of whether this course or COMPSCI 187 is more appropriate, contact instructor.
Who is this course for? COMPSCI 186 is intended for students who have completed COMPSCI 121 but have not yet completed COMPSCI 187. It focuses on appropriate use of, rather than the implementation and analysis of, the data structures studied in COMPSCI 187, along with additional structures (such as sets and maps) which are not as well-covered there but that are useful for practical programming.
For some students, 186 can serve as an alternative to 187. It will be recognized as one of the core courses for the proposed Informatics major, and the practical programming with data structures in 186 may be adequate preparation for some courses such as COMPSCI 326.
Computer Science majors (both BA and BS) must still take 187, which is a prerequisite for all the 200-level core courses. But it is our intention that many majors and applicants to the major will find 186 to be good additional advance preparation for 187.