CIS 223. Data Structures and Algorithms

Section 001-002. Spring 2005

Syllabus

Instructor

Dr. Pei Wang
OFFICE: Room 312, Wachman Hall (Computer Activity Building)
ADDRESS: CIS Department, Temple University, Philadelphia, PA 19122
PHONE : (215)204-6485
EMAIL: pei.wang@temple.edu

Time/Place

Section 001
       Lectures: Tuesday & Thursday 8:40 AM - 10:00 AM, Tuttleman Learning Center 307AB
      Lab: Tuesday 2:40 PM - 4:30 PM, Wachman Hall 108
Section 002
       Lectures: Tuesday & Thursday 10:10 AM - 11:30 AM, Tuttleman Learning Center 307AB
      Lab: Thursday 2:40 PM - 4:30 PM, Wachman Hall 108
Office Hours: Tuesday & Thursday, 1:15 PM - 3:15 PM, Wachman Hall 312, and by email appointment

Important Dates

First class: Tuesday, Jan. 18.
Last day to drop (tuition refund available): Monday, January 31.
Spring recess: No classes are held during the week March 6 - March 13.
Last day to withdraw (no refund): Monday, March 28.
Last Class: Thursday, April 28.

Prerequisites

Grade of C or better in CIS 0066,0067,0068, and 0072; and grade of C or better in CIS 0166; Grade of C or better in Mathematics C085. CIS 0166 may be taken concurrently

Course Description

Program style organization and design with continued emphasis on the use of abstract data types and the object-oriented design paradigm. Comparative analysis of algorithms and data structures. Data structures include heaps, priority queues, binary and general trees, binary search trees, AVL trees, B-trees, and graphs. Algorithms include heapsort, topological sort, breadth-first search, depth-first search, shortest path algorithms, and Huffman coding. Students will gain experience working in a group on at least one moderate-size project.

Textbooks

Topics Coverage

Programming Environment

The programming language used for this course is Java (version 1.4.2). The programming environment in the lab is NetBeans (Version 3.6), which can be downloaded for free.

Grading

There will be two mid-term exams and a comprehensive final exam. The exams will count for 70% of your grade. There will be about six programming assignments, which will be 30% of your grade. To pass the course, you must maintain a passing average on both the exams and the assignments. Students who miss the final and do not make alternative arrangements with me before I turn in the grades will be graded F.

All of the above must be the student's own work. Plagiarism and academic cheating will be punished.

Attendance

Attendance to all lectures, labs, and examinations are required.

Disability Disclosure Statement

Any student who has a need for accommodation based on the impact of a disability should contact me privately to discuss the specific situation as soon as possible. Contact Disability Resources and Services at 215-204-1280 in 100 Ritter Annex to coordinate reasonable accommodations for students with documented disabilities.