CS 32 Winter 2015 Syllabus
CS 32 Winter 2015 Syllabus
CS 32 Winter 2015 Syllabus
2/1/15, 10:20 PM
Course Objectives
In this course, you will learn how to employ data abstraction to build programs larger than those you constructed in CS
31. You will learn how to use a variety of data structures in the course of solving problems, and importantly, how to
analyze what data structures and algorithms are most appropriate for a given problem. In addition, you will deepen your
understanding of modern programming by learning the principles of object-oriented and generic programming.
Course Website
The URL for the course website is http://cs.ucla.edu/classes/winter15/cs32. You must check the site for announcements
at least every other weekday. You must also check your email as regularly.
Lecture 2
MW 12-1:50
Boelter 3400
David Smallberg
Lecture 3
MW 2-3:50
Boelter 3400
David Smallberg
climberkip@gmail.com
das@cs.ucla.edu
das@cs.ucla.edu
Discussion 1A
F 10-11:50
Boelter 5249
Jinha Kang
jinha@cs.ucla.edu
Discussion 1B
F 10-11:50
Boelter 5272
Zhou Ren
zhou.ren@cs.ucla.edu
Discussion 1C
F 10-11:50
Boelter 3400
Discussion 1D
F 12-1:50
Rolfe 3129
Noah Duncan
Discussion 2A
F 12-1:50
Boelter 3400
Tuan Le
Discussion 2D
F 2-3:50
Boelter 5280
He Ma
Discussion 3A
F 2-3:50
Boelter 3400
Olivera Grujic
Discussion 3D
F 12-1:50
Haines A44
Samuel Ahn
ogrujic@cs.ucla.edu
sswahn@ucla.edu
Discussion 2E
F 12-1:50
Boelter 4413
Suming Chen
Discussion 3B
F 2-3:50
Rolfe 3105
Katherine Wang
Discussion 3E
F 2-3:50
Boelter 5436
Khaled Refaat
suming@ucla.edu
k8wang@cs.ucla.edu
krefaat@cs.ucla.edu
Discussion 2B
F 12-1:50
Royce 156
Nick
Karianakis
nick@cs.ucla.edu
Discussion 2C
F 12-1:50
Boelter 5280
https://ccle.ucla.edu/pluginfile.php/752786/local_ucla_syllabus/syllabus/15442/syllabus.html
Discussion 3C
F 2-3:50
Boelter 4283
Page 1 of 4
2/1/15, 10:20 PM
Kung-Hua Chang
Joshua Joy
Peng Wei
kunghua@cs.ucla.edu
jjoy@cs.ucla.edu
peng.wei.prc@cs.ucla.edu
Office hours for the instructors and the TAs are on the class web page.
2
3
6
7
10
end of
Date
Topics
Book
Jan.
Chapter 1
Jan.
Chapter 3
Jan.
Chapter 4
Jan. 12
Linked Lists
Chapter 4
Jan. 14
Chapters 6 and 7
Jan. 19
Jan. 21
Chapter 8
Jan. 26
Inheritance, Polymorphism
Chapter 8
Jan. 28
Chapter 9
Jan. 28
Feb. 2
Recursion
Chapters 2 and 5
Feb. 4
Recursion
Chapters 2 and 5
Feb. 9
Chapter 8
Feb. 11
Chapter 9
Feb. 16
Feb. 18
Chapter 9
Feb. 23
Trees
Chapter 10
Feb. 23
Feb. 25
Trees
Chapter 10
Mar. 2
Chapters 11 and
12
Mar. 4
Chapters 11 and
12
Mar. 9
Graphs
Chapter 13
Mar. 11
Review
Mar. 14
https://ccle.ucla.edu/pluginfile.php/752786/local_ucla_syllabus/syllabus/15442/syllabus.html
Page 2 of 4
10
2/1/15, 10:20 PM
(Sat.)
Textbook
The course textbook is Data Abstraction and Problem Solving with C++: Walls and Mirrors, Sixth Edition, by Frank M.
Carrano, Addison Wesley, 2013. The Fifth Edition or even the Fourth Edition is acceptable as well.
Good C++ books we could recommend are Accelerated C++, by Andrew Koenig and Barbara E. Moo, Addison Wesley,
2000, and Thinking in C++, Second Edition, by Bruce Eckel, Addison Wesley, 2000; the latter book is available online
for free.
Tuesday, January 13
Tuesday, January 27
Page 3 of 4
2/1/15, 10:20 PM
Project 4
Thursday, March 12
Examinations
The midterms will cover material from the lectures and the textbook. The final examination will cover material from the
entire course. Missing the final for any reason will result in a final exam score of zero.
Grading
Your grade in the course will be determined from your total score, although a final exam score below 40 may subject you
to a failing grade regardless of your total score. The total score is determined from the graded materials as follows:
Project 1
Project 2
Project 3
Project 4
Homeworks
Midterm exam
Final exam
1%
10%
10%
10%
19%
20%
30%
The total points you earn from projects and homeworks (scaled to 0 through 100) will be capped at 30 points above the
mean of your exam scores (scaled to 0 through 100). For example, if you average 90 on the assignments, your midterm
score is 60, and your final is 40, then your assignment average is treated as only 80 (because that's 30 more than the
mean of 60 and 40). In other words, your assignment scores won't count fully if you can't show from your exam scores
that you learned what you should have from the assignments.
A request for reconsideration of the grading for an item must be made within one week of our sending you your score for
that item.
You will not earn points on any of your coursework until you have signed and turned in the Academic Integrity
Agreement.
https://ccle.ucla.edu/pluginfile.php/752786/local_ucla_syllabus/syllabus/15442/syllabus.html
Page 4 of 4