CAS CS 112: Intro to CSII (Java) Spring 2006
Course Syllabus
Description and Objective:
This course is intended as an introduction
to data structures, algorithms, and more advanced programming
techniques. Some topics covered include recursion, linked lists, trees,
graphs, sorting, hashing, and the analysis of
algorithms. The main objective of the course is to give students
exposure to more advanced programming tools. We hope to achieve this
goal by presenting higher level concepts in lecture and hands-on
computer practices in the lab.
Text: People: Office Hours: M 9-10am, T 4-5pm, Th 12:30-2:30pm Contacting Instructor:
Teaching Fellow:
Course Web Page: Course Mailing List: Lectures:
Lectures will be held Tuesdays and Thursdays from
11:00am-12:30pm in CAS 222. Labs:
The required text book for this course is Data Structures and Algorithm Analysis
in Java
by Mark Allen Weiss,
Instructor
Teaching Fellow
William Mullally
Karim Mattar
PSY 228A and MCS 209
617-358-3246(PSY228A) and 617-353-3326(MCS209)
mullally@cs.bu.edu
kmattar@cs.bu.edu
The course web page is http://cs-people.bu.edu/mullally/cs112. Please
visit the website frequently for course materials, homework
assignments, and announcements.
Each student is required to join the course mailing list. You can do so
by running csmail while on csa at a shell prompt. Namely
while on a Linux machine in the computer lab open a
shell window and type csmail
-a cs112a1.
Lectures in the course will focus on the
higher level design of algorithms and data structures. All students are
required to attend lectures and are responsible for the material
presented.
The lab is intended to reinforce ideas presented in lecture; here
students will practice the concepts by implementing actual algorithms and
data structures using Java. It is imperative that students attend the lab
sections in order to successfully complete the homework
assignments.
Homework:
Homework will be assigned regularly in the course. It will come in three forms:
Reading Assignments: It is important that students use the textbook to supplement their understanding of the material presented in the lecture and the lab.
Written Assignments: This homework will consist of things like essay questions, small research work, and mathematical problems. These assignments are to be turned in at the start of lab on the scheduled due date.
Programming Projects: This homework will extend the programming work done in the lab. These assignments will be done on the computer and checked via the computer. It is important to repeatedly test your code before submission, all programming projects will be tested on the CSA cluster. These assignments will be submitted on WebCT and must be written in Java.
Late Homework:
15% of the total number of points for the assignment will be deducted daily. No homework will be accepted after one week.
Exams:
There will be two exams during the course, a midterm that will cover material from the first half and a cumulative final exam which will be weighted toward material covered after the midterm. The midterm will be on March 2nd. The final exam is going to be held on May 3rd at 2:00pm. Makeups will not be given.
Grade Calculation
| 40% Homework |
| 25% Midterm |
|
35% Final |
Academic Misconduct:
The first reading assignment of the course is to read Boston University's Academic Code of Conduct, located at: http://www.bu.edu/cas/undergraduate/conductcode.html
A few highlights are presented to emphasize importance.
Absolute adherence to the code of conduct is demanded of the instructor, teaching fellow, and students. This means that no matter the circumstance any misconduct will be reported to Boston University.
While students are encouraged to discuss course materials, no collaboration is allowed on homework. Specifically you may discuss assignments and projects verbally, but must write up or work on the computer alone. In addition any discussion should be documented. An example on would be "Thanks to Bera for showing me how to initialize the linked list." Another important example is citing a source, this could be "This information was adapted from www.boston.com"
While computers enable easy copying and collaboration both with other students and materials from the Internet, it is possible to use these same computers to detect plagiarism and collaboration.
If any student does not understand these terms or any outlined in The Academic Code of Conduct it is his/her responsibility to talk to the instructor or teaching fellow.
Feedback:
Your thoughts and concerns on this course are important. You are encouraged to give feedback to the instructor and teaching fellow throughout the term. As always students will be asked to fill out a course evaluation at the end of the term.