CIS 351 Data Structures
Barbara Nostrand, Ph.D.
Electrical Engineering and Computer Science
Abstract data structures, algorithm analysis, arrays, strings, lists, trees, binary search trees, priority queues, hashing, graphs, object-oriented programming. Three hours of lectures. One hour of computer laboratory.
CIS 252 or permission of instructor.
Further develops problem solving and design capablility. Considerable attention is devoted to developing effective software engineering practice, emphasizing such principles as design, decomposition, encapsulation, procedural abstraction, testing, and software reuse. A major theme of this course is how the design of data components can be used to simplify programs. Upon completing this course, you should be able to:
Subject of this Course
|PF1||Fundamental programming constructs||2||Core hours (of 9)|
|PF3||Fundamental data structures||6||Core hours (of 14)|
|PF4||Recursion||3||Core hours (of 5)|
|PF5||Event-driven programming||2||Core hours (of 4)|
|AL1||Basic algorithmic analysis||2||Core hour (of 4)|
|AL3||Fundamental computing algorithms||2||Core hours (of 12)|
|AR2||Machine level representation of data||1||Core hour (of 3)|
|PL4||Declarations and types||1||Core hour (of 3)|
|PL5||Abstraction mechanisms||3||Core hours|
|PL6||Object-oriented programming||7||Core hours (of 10)|
|HC1||Foundations of human-computer interaction||1||Core hour (of 6)|
|GV1||Fundamental techniques in graphics||2||Core hours|
|GV2||Graphic systems||1||Core hour|
|SE1||Software design||4||Core hours (of 8)|
|SE2||Using APIs||2||Core hours (of 5)|
|SE3||Software tools and environments||1||Core hour (of 3)|
Class time will be used for lecture, discussion, and other challenging activities. Attendance is required, both physical and mental. Full participation is expected. Reading assignments are to be completed before coming to class. This will better prepare you for asking questions in class, and will facilitate discussion. You must attend the weekly laboaratory section for this course. Generally, you will complete a laboratory assignment with a laboratory partner during each laboratory period. You must bring a copy of Java: The Complete Reference or an equivalent Java reference manual with you to each laboratory period. You will also complete programming projects. Some of these projects will be completed individually while others will be completed by student project teams. In all cases, you will annotate your code to indicate who completed which part of the project.
Homework and Projects
In this course, you learn by doing. Thus, you will be asked to complete homework assignments and laboratory projects on a regular basis. Each of the laboratory assignments is intended to introduce new material and is designed to substantially support the student. All of the laboratory projects are posted to the web site and should be submitted by the end of the day shown on the schedule. You will complete some of these projects with a laboratory partner. In general, you will not work with the same person more than once during the course.
There will be 2 midterm exams and a cumulative final exam. The first midterm is planned for Monday, March 4, and the second for Monday, April 1. Some of the examinations may be written at home. More information will be posted on the web as the dates near.
Make-up work will be given/accepted only under the following conditions:
Collaboration and Academic Integrity
The Syracuse University Academic Integrity Policy holds students accountable for the integrity of the work they submit. Students should be familiar with the Policy and know that it is their responsibility to learn about instructor and general academic expectations with regard to proper citation of sources in written work. The policy also governs the integrity of work submitted in exams and assignments as well as the veracity of signatures on attendance sheets and other verifications of participation in class activities. Serious sanctions can result from academic dishonesty of any sort.
Restricted material: Solution guides, pre-written essays and similar materials are "restricted materials". Using such materials will be considered a violation of academic honesty. You can use any publicly available software library or design tool to help you with your work provided that you are not violating copyright or other legal restrictions or are substantially appropriating a complete piece of software to control your robot. If you find a useful design or analysis tool, please report it to the entire class during the first available project day. Please be careful to credit the design tools and software libraries that you use in your project documentation.
Academic Honesty: If a breach of academic integrity is discovered, all involved students will receive a 0 for that assignment or exam. Further infractions will be dealt with according to college policy.
Special Needs and Disabilities
Syracuse University's Office of Disability Services authorizes special accomodations for students with disabilities. If you believe tha you are a student who may need \academic accomodations dues to a disablity, you must register with the Office of Disability Services (ODS) at 804 University Ave., Room 309, 443-4498 or 443-1371 (TDD only). Please see me during office hours as soon as possible to discuss your needs. For more inforamtion about services available to you, please consult the Ofice of Disablity Services. http://disabilityservices.syr.edu
Formal Attendance and Lateness Policy
Absences: Unavoidable absences do not excuse students from responsibility for course material. Following a class absence, you must contact the instructor and attend the next regularly scheduled office hour to receive additional make-up assignments. These assignments will contribute to the Homework/Quiz/Lab portion of the final grade. Failure to contact the instructor or turn in the make-up assignment on time will result in a grade of zero for that assignment. This policy is in effect for unexcused as well as officially excused university absences (e.g. illness, religious obligations, etc.)
Late assignments: Laboratories and projects are due by the end of the day assigned in the schedule. If you miss an assignment, you must visit a Help Session with the Teaching Assistant in order to turn it in. Late Laboratory and Project assignments will loose 10% during the first week that they are turned in late, and will loose an additional 10% for each additional week that they are late. In case of officially excused absences, late Laboratory and Project assignmentts will begin to loose credit on the day following return to school. No late work will be accepted after the deadline posted in the schedule.
Final Examination: Attendance during the Final Examination period is
mandatory. Students failing to attend the scheduled final examination will receive a failing grade for the course.
Statement on Alcohol and Substance Abuse
The mission of the university is to educate the whole person. As an educator, I am concerned about the wellbeing of my students both in and out of the classroom. A student who comes to my class while under the influence of alcohol or other drugs, or the after effects of that usage, cannot think critically, nor can they participate meaningfully. Any type of intoxication or its effects will not be tolerated in my classroom. If you think you may be having a problem with alcohol or other substances, please resach out to a member of our university community for help.
Last modified: 2007 OCT firstname.lastname@example.org