CSC 402/Data Structures I
Syllabus


Course meeting details

Our class meets every Monday from September 11th to November 13th, 5:45pm to 9pm, with a 15-minute break at 7:15. At the moment the class is listed as meeting in room 1511 of the Lewis building (25 E. Jackson) but please check that shortly before the first class as room assignments sometimes change at the last minute.

Course description

From the course catalog: "A first course on data structures in Java for graduate students. The course introduces Java programming from within the context of data structures. The course covers arrays, linked lists, stacks and queues, data structures supporting disjoint-set operations, and discusses recursion and performance analysis. The implementation of the basic operations on each data structure are discussed and analyzed in terms of their efficiency. Prerequisite: CSC 401 (Introduction to Programming)"

More specifically, this is a second programming course for students who have had a term of programming or its equivalent. We assume that students know no Java and we will teach the language from its fundamentals.

Course web site

Except for the textbooks, all course materials will be available through DePaul's D2L web site. If you are not registered in the course you will not be able to see them but you may write to me to request them at my CDM email address.

There is one required textbook that comes in two forms. The book's title is Algorithms, 4th edition, by Robert Sedgewick and Kevin Wayne (Addison-Wesley, 2011). There is a version with videos (ISBN 978-0134384689) and one without (ISBN 978-0321573513). Many of you already have one of these as it's the same text as used in CSC 402. There is a good companion site. An on-line version is also available through Safari and that can be accessed through DePaul's library site.

There are also two free textbooks, available on-line, that you should consult. They are:

Learning outcomes

By the end of this course students should be able to:

Schedule of topics

Week # (lecture date) Topic Reading
in "Algorithms"
1 (9/11) Python, Java, and Eclipse Section 1.1
2 (9/18) Data Abstraction, Objects, References Section 1.2
3 (9/25) Data Abstraction, Objects, References Section 1.2
4 (10/2) Linked Structures Section 1.3
5 (10/9) Linked Structures and Resizing Arrays Section 1.3
6 (10/16) Analysis Section 1.4
7 (10/23) Union Find Section 1.5
8 (10/30) Elementary sorts, Comparators Section 2.1
9 (11/6) Priority Queues and Heaps Sections 2.4, 2.5, and 6.1
10 (11/13) Mergesort and Quicksort Sections 2.2 and 2.3

Assignments and grading

There will be weekly assignments which, for the most part, will involve programming but will at times require written answers. There will be a proctored final exam. The assignments will comprise 60% of the course grade, the final 40%.

Unless otherwise stated, you may work with other students on the weekly assignments. For example, it is permissible for several people (I recommend no more than three) to collaborate on writing a single program. However, every person must submit a solution through the course D2L's drop box for that program and that solution must list the names of everyone who collaborated. To be clear: For the weekly assignments in this course (unless otherwise stated) it is not plagiarism if you and other students submit the same program as long as every person lists in their submission everyone who worked on the common solution.

To get my help on a program, please either see me in person or send the .java file to me as an email attachment (not as text copied into the mesage body). In the body of the email explain the problem you're encountering and this should be something more than "It doesn't work."

Once a program is submitted to its D2L drop box, it can be graded. In other words, be aware that submissions may be graded before the deadline. Don't submit until you're sure that you want the program graded.

The resulting overall percentage will be translated into a letter grade as follows:

Letter Percentage range
A 95-100
A- 90 - <95
B+ 87 - <90
B 83 - <87
B- 80 - <83
C+ 77 - <80
C 73 - <77
C- 70 - <73
D+ 65 - <70
D 60 - <65
F <60

Participation policy

For students in the in-class section, attending every class is required.

Academic Integrity Policy

This course will be subject to the academic integrity policy passed by our faculty. More information can be found at http://academicintegrity.depaul.edu/.  I strongly recommend that you read this!  It explains both your rights and your responsibilities as a student on matters of academic integrity.

Communication

All communication will be done in one of three ways:

You may call my office phone and leave a voice message but I'm more likely to respond to it with an email than with a return call.

When you send me email, two requirements:

  1. Please have the subject line begin with CSC 402:
  2. Make sure your full name appears somewhere in the message.

Office location and hours

My office is room 747 in the CDM building, 243 S. Wabash. My office hours can be found on my CDM homepage. My phone number is 312-362-8334 (dial 2-8334 from the 7th floor lobby phone).

Plagiarism

The university and school policy on plagiarism can be summarized as follows: Students in this course should be aware of the strong sanctions that can be imposed against someone guilty of plagiarism. If proven, a charge of plagiarism could result in an automatic F in the course and possible expulsion. The strongest of sanctions will be imposed on anyone who submits as his/her own work any assignment which has been prepared by someone else. If you have any questions or doubts about what plagiarism entails or how to properly acknowledge source materials consult the instructor.

Incomplete

An incomplete grade is given only for an exceptional reason such as, for example, a death in the family or a serious illness.  Any such reason must be documented. Any incomplete request must be made at least two weeks before the final and approved by the Dean of the College of Computing and Digital Media. Any consequences resulting from a poor grade for the course will not be considered as valid reasons for such a request.

Resources for Students with Disabilities

Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential.

To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class) and make sure that you have contacted either the PLuS Program, for Learning Disabilities and/or AD/HD, or the Office for Students with Disabilities, for all other disabilities, at:

Student Center, LPC, Suite #370
Phone number: (773) 325-1677
Fax: (773) 325-3720
TTY: (773) 325-7296

Document last updated on August 18th, 2017.