CSC 216

Data Structures

Dr. Melissa Wiggins

MCC 306

(601) 925-3874

http://www.mc.edu/~mwiggins

mwiggins@mc.edu



COURSE CREDIT: 4 hrs. credit PREREQUISITES: CSC 116



OFFICE HOURS: MWF 8-9, 10-11; TR 8-9:15, 11-1:00; MF 11-12 *see website for exact times



TEXT: Data Abstraction and Problem Solving with Java: Walls and Mirrors,

Frank M. Carrano & Janet J. Prichard



OTHER MATERIALS: An MCnet account and access to the Internet.



DESCRIPTION: Three hours of lecture and three hours of laboratory per week. An introduction to the basic concepts of data structures from a practical standpoint with an emphasis on the use of some of the abstractions necessary for structured program development. Topics include, software development tools, top-down design, algorithm analysis, encapsulation, and methods of implementation as well as the common data structures stacks, queues, lists, and trees. Sorting and searching techniques employing these data structures will also be examined.



RATIONALE: This course is required of all majors and minors in Computer Science and Computing and Information Systems as well as various other degree programs on campus.



LEARNING OBJECTIVES: After successfully passing this course, the student will be able to write well-designed object-oriented programs in the Java language that use and implement the common data structures and their extensions. The entire list of course objectives can be found at http://www.mc.edu/campus/users/mwiggins/csc216.html.

EVALUATION:



Exams: There will be a three exams worth 150 points. (450 points)



Assignments: There will be 5-8 programming/problem solving assignments worth a total of 150 points.



Lab Assigns: There will be a 11 laboratory assignments worth a total of 200 points. This grade will come from the quizzes that are given at the end of lab each week.



Final Exam: There will be a comprehensive final examination given at the time specified by the college. This examination will be worth 200 points. Monday, May 5, 2003, 8:00-10:00 a.m.



Grading Scale: 895 - 1000 points A 595 - 694 points D

795 - 894 points B 0 - 594 points F

695 - 794 points C



CLASS ATTENDANCE: The student is expected to attend classes. Regulations for class attendance are given in the Class Schedule. Remember in a MWF class 12 absences is an automatic F. Three tardies counts as one absence in this class. (See Mississippi College catalog). Laboratory attendance is very important!! Four absences in lab will result in a grade of 0 for the lab portion. "For lesser numbers of absences, the student should expect a lowered grade in the course, with the maximum penalty of one letter grade for each week of absences (in a semester) or the equivalent. The calculation of the semester grade, including any penalty for absences, is the responsibility of the professor and may vary according to the nature of the course and the grading scale used. In some classes points will be deducted from the semester grade for unexcused absences; in others, the penalty may be built into the grading scale by means of frequent pop quizzes, grades for class participation and the like." Mississippi College Policy 2.10 Students should expect a penalty for absences as stated above.



MAKE-UP WORK & TESTS: Students are expected to take tests on the day they are assigned. However, it is the student's responsibility to contact the instructor in case of an emergency illness or death in the family before the test. At that time the student and instructor will agree on a time for the make-up exam. This time should be within 2 days of the missed test. Assignments are to be turned in on the day they are due!! All work is due at the beginning of the class period. Any work not turned in will lose 10% credit for each school day until the third day. The due date at the beginning of class is day 1. No work will be accepted after the third day. Under no circumstances will work be accepted after the assignment has been graded and handed back in class. Laboratory work will be due at the end of each week's lab at which time a lab quiz will be administered. Exceptions to this may be made at the instructor's discretion.



ACADEMIC INTEGRITY: This statement on academic honesty in computer science courses is an addendum to the Mississippi College Policy 2.19. In a computer science class individual effort is expected. Student misconduct not only includes cheating on tests, but also extends to copying or collaborating on programming assignments, projects, lab work or research unless otherwise specified by the instructor. Using other people's accounts to do your work or having others do your work is prohibited. Close proximity in lab does not mean collaboration is permitted. NOTE: Discussing logical solutions to problems is acceptable, exchange of code, pseudocode, designs, or procuring solutions from the Web, other texts, the Internet or other resources on or off campus is not acceptable and will be treated as cheating. REMEMBER: Any work submitted by the student which is not the student's own will be considered cheating.

First offense: grade of 0 for **all** parties involved unless the "guilty" party can be determined as well as any punishment deemed necessary under policy 2.19

Second offense: grade of F in the course as well as any punishment deemed necessary under policy 2.19



SPECIAL ACCOMMODATIONS: If you need special accommodations due to learning, physical, psychological, or other disabilities, please contact Dr. Buddy Wagner in the Counseling and Career Development Center. He may be reached by phone at (601)925-3354 or by mail at P.O. Box 4013, Clinton, MS 39058.



DROPPING A COURSE: LAST DROP DATE - March 31, 2003

Students cannot withdraw after this date with a W (passing) unless the three following criteria are met:

- Extenuating circumstances (clearly outside the student's control)

- Passing the course at the time of withdrawal

- Does not have excessive absences at the time of withdrawal

NOTE: Dropping after the THIRD (3rd) WEEK will result in a grade of W appearing on your permanent record (transcripts). See http://www.mc.edu/publications/policies/213.html.



INCOMPLETE GRADES: An Incomplete may be given to a student who has been providentially hindered from completing work required in a course, provided that:

1. semester attendance requirements have been met;

2. most of the required work has been done;

3. the student is doing passing work; and

4. the student has made prior arrangements with the professor to complete the remaining work at a later date.

The grade of I must be removed promptly or it becomes an F; it cannot be removed by repeating the course.



TENTATIVE COURSE OUTLINE*

Day
Date
Course Topic & Reading Assignment
Other Course Assignments
1 January 13 Course Policies - Intro. to course& Review
2 15 Review of CSC 116 - Appendix A
3 17 Ch. 1 - Principles of Programming and SE
4 20 No Class Martin Luther King, Jr. Holiday
5 22 Ch. 1
6 24 Ch. 2 - Recursion: The Mirrors
7 27 Ch. 2
8 29 Ch. 2 Prog. Asgn 1 given
9 31 Ch. 3 - Data Abstraction: The Walls
10 February 3 Ch. 3
11 5 Ch. 3
12 7 No Class MS Science & Math Tournament
13 10 Ch. 4 - Linked Lists
14 12 Ch. 4
15 14 Ch. 4 Prog. Asgn. 2 given
16 17 Ch. 5 -Recursion As a Problem Solv. Techniques
17 19 Ch. 5
18 21 Exam 1 - Chapters 1-4
19 24 Ch. 5
20 26 Ch. 6 - Stacks
21 28 Ch. 6
22 March 3 Ch. 6 Prog. Asgn. 3 given
23 5 Ch. 7 - Queues
24 7 Ch. 7
25 10 No Class SPRING BREAK
26 12 No Class SPRING BREAK
27 14 No Class SPRING BREAK
28 17 Ch. 7
29 19 Ch. 8 - Class Relationships Prog. Asgn. 4 given
30 21 Ch. 8
31 24 Exam 2 - Chapters 5-7
32 26 Ch. 8
33 28 Ch. 9 - Algorithm Efficiency & Sorting
34 31 Ch. 9 **Last Drop Date
35 April 2 Ch. 9 Prog. Asg. 5 given
36 4 Ch. 10 - Trees
37 7 Ch. 10
38 9 Ch. 10
39 11 Ch. 10
40 14 Ch. 11 - Tables & Priority Queues Prog. Asgn. 6 given
41 16 Ch. 11
42 18 No Class GOOD FRIDAY
43 21 Ch. 11
44 23 Ch. 12 - Hashing
45 25 Exam 3 - Chapters 8-11
46 28 Ch. 12 Dead Days
47 30 Wrap-Up & Review Dead Days
48 May 5 Comprehensive Final Exam 8:00-10:00 a.m.

*Instructor reserves the right to modify as necessary.



Program Submission Guidelines



All programs must be submitted by e-mail as an attachment. Source code must be submitted as well as all files necessary for the programs execution. The e-mail message should contain the following information:



Author's name

Date completed

Brief problem description

Statement regarding whether the program works or not.

If the program does not work, a brief but concise description of what is wrong and what it will take to "fix" it.

CSC 216 LABORATORY SCHEDULE



LAB #
WEEK OF
COURSE CONTENT
1
Feb. 3 Applets, Applications, Preconditions & Postconditions
2
Feb. 10 Recursion
3
Feb. 17 Classes
4
Feb. 24 Linked Lists
5
Mar. 3 Recursion Revisited
6
Mar. 10 No Lab - SPRING BREAK
7
Mar. 17 Stacks
8
Mar. 24 Queues
9
Mar. 31 Lists of Objects & Iterators
10
Apr. 7 Performance Evaluation
11
Apr. 14 Trees
12
Apr. 21 Heaps & Priority Queues






LEARNING OBJECTIVES: After successfully passing this course, the student will be

able to write well-designed object-oriented programs in the

Java language that use and implement the common data

structures and their extensions.



The student will be able to

The student will be able to

The student will be able to

The student will be able to

The student will be able to

The student will be able to

The students will be able to



The student will be able to



The students will be able to



The student will be able to

The student will be able to