CS 146 Spring 2009

Data Structures and Algorithms

Dr. Beeson

This is the main course web page. It will contain links to important course information, as well as a link to the homework submission system. Students in the course should check this page often. Recent important changes will be in red.

Here’s a copy of the green sheet. There you can find out what the textbook is and what the grading system will be.

Here are the course grades and supporting calculations. There is also a column called "Grade Cap if Any" that is the result of applying the "minimum performance requirement". I have examined the source code of all F and NS homework and made a judgment whether it counts as as a "serious effort". If it says "none" in the grade cap column that means all your submissions counted as a serious effort and there will be no grade cap applied to you. If there are any errors in these grades please let me know so I can correct them before submitting the grades to the University, which I will do Friday afternoon.

There were 24 A's, 29 B's, and 10 C's. Nobody who turned in homework and took exams failed the course or even got a D or C-. Standards were high in this course, but those who were ill-prepared were kept out by the review exercises, and those who were admitted all worked hard and succeeded. Congratulations to you all.



Here are the solutions to the Friday final exam.
Here are the solutions to the Tuesday final exam.




Here are the solutions to the first midterm exam.

Here are the solutions to the second midterm exam.
Here are the grades on the second midterm. You can pick up your exam in my office hours if you want it back. There were 33 A's (including A-), 18 B's, 14 C's, and one D.

Here are the review exercises for your reference.

 

Here's a sample first midterm exam.

 

Here's a sample second midterm exam.

 

Here's last year's final exam for your use in preparing for your final exam.

Photo Gallery of all students in both sections (who had their photos taken).

Assignments (The submission links are at the bottom of the Assignments page)

Are you having problems submitting your homework? Check these possible problems and their solutions.

View the homework grades

 

B-tree homework grades (10=A, 9 =B, 8=C, 7=D, 6 or below = F)

What I expect from my students

Lecture Plan and Readings This schedule is subject to change, but the changes, if any, will be minor, so this will give you a good idea of the course contents. This plan reflects the course syllabus developed in Fall 2005 by the Undergraduate Curriculum Committee, and is designed to mesh with the prerequisite course CS46b and the course in Design and Analysis of Algorithms (CS155) that comes after CS146. All sections of CS146 should cover these same topics.

Here's a story about the failure of a space mission that illustrates why I have a minimum performance requirement: better that students should fail now than go out in the world and cause the failure of space missions. Note the list of reasons for the failure cited in that article.

There are a few elementary programming issues with which some students need help. For example, how to create an array of objects in Java. As a second example, some students did not know how to call Arrays.sort with a programmer-defined Comparator object. Practice this first by sorting an array of integers in descending order, instead of ascending as you get with the one-argument version of Arrays.sort.