FRAMES    NO FRAMES

Course Description

Instructor: Hongwei Xi

Meeting place: CAS 226

Meeting times: MWF 10-11AM

Scope and Topics Covered

This course starts by quickly revisiting, and then building upon, advanced programming concepts in C++ taught at the end of CS 111, especially dynamic memory allocation, pointers, and recursion. Then, the main focus of the course is on the design, analysis and implementation of fundamental data structures used throughout computer science. These include linked lists, stacks, queues, trees, hash tables, graphs, as well as specialized methods for searching and sorting. All of our implementations will be in the the object-oriented programming language C++. The emphasis in teaching this course centers around the following:

Prerequisites

This course is designed for students who already program with a CS 111 level of proficiency in C++. If you have taken CS 111 in Java, or if you have AP credit for a Java-based course, you are strongly encouraged to take the alternate section of CS 112 taught in Java. If you do not have significant previous exposure to programming, then you are requested to transfer to CS 111. You are expected to be familiar with UNIX and EMACS (or other equivalent text editor). Some help will be available in the section, but if you have not used UNIX or EMACS before, then you should attend the appropriate tutorials provided by B.U. Office of Information Technology.

Exams

First Midterm Exam: Friday, February 24, 2006 
Second Midterm Exam: Wednesday, April 12, 2006 
Final Exam: Saturday, May 6, 2006 

Teaching Staff

Instructor -- Hongwei Xi
       Office Hours: M 1-2:30 and F 11-12:30
       Location: MCS 172, e-mail: hwxi AT cs DOT bu DOT edu

Teaching Assistant -- Dengping Zhu
       Office Hours: W 4:30-6 and Th 2-3:30
       Location: MCS 174, e-mail: zhudp AT cs DOT bu DOT edu

Grader -- Matthew Cole
       e-mail: mattcole AT cs DOT bu DOT edu

Mailing List

The course mailing list is named cs112b1 and is managed by IT's majordomo engine. All students registered for the course should add themselves to the mailing list. To join the course mailing list, type "csmail -a cs112b1" at the Unix prompt. To inspect who else is on the mailing list, type "csmail -p cs112b1". To remove yourself from the mailing list, type "csmail -r cs112b1".

Students are welcome to post messages and questions to the mailing list.  All messages to cs112b1@cs.bu.edu are archived (click here).

Textbooks

Required:

Class Calendar

  • Instruction begins Wednesday, January 17, 2006
  • Holiday, Class suspended Monday, February 20, 2006
  • Substitute Monday schedule of class Tuesday, February 21, 2006
  • First midterm exam scheduled on Friday, February 24, 2006
  • Spring recess Saturday, March 4, through Sunday, March 12, 2006
  • Instruction resumes Monday, March 13, 2006
  • Second midterm exam scheduled on Wednesday, April 12, 2006
  • Holiday, Class suspended Monday, April 17, 2006
  • Substitute Monday schedule of class Wednesday, April 19, 2006
  • Instruction ends Friday, April 28, 2006
  • Final exam scheduled on *Saturday*, May 6, 2006
  •  

    Maintained by Hongwei Xi
    Created: 2006.1.2    Last modified: 2006.1.29