INFS 590

Program Design and Data Structures

 

(Announcements)

 

Instructor:


Dr. Jessica Lin
Office: Science & Tech II, Room 330C
Phone: 703-993-4693
Email:  jessica[AT]ise[DOT]gmu[DOT]edu
Office Hours: by appointment

 

Teaching Assistant:

 

          Nagini Kodukula
Email: nagini.kodukula [AT] gmail [DOT] com

                      nkodukul [AT] gmu [DOT] edu
Office Hours: Thursday 1:30-3:30pm @ Science & Tech II Room 268

 

Lectures:

 

Mon 4:30-7:10 pm,   Science & Tech I, Room 131

Prerequisite:

 

Undergraduate courses or equivalent knowledge in structured programming in a high-level language.

 

Textbook:

 

Data Structures & Problem Solving Using Java 3rd Edition, M. A. Weiss, ISBN 0201748355.

 

Compiler Version

 

All your code should compile under Java 1.5.

 

Course Description:

 

Study of the fundamentals of data structures and algorithms applied in programming solutions to application problems. The course stresses programming in a modern high-level language. Credit cannot be applied to any graduate degree in School of Information Technology and Engineering.

 

Grading:


Homework Assignments: 10%

Programming Projects: 25%

Quizzes: 5%
Midterm Exam: 30%
Final Exam: 30%

 

 

Homework Assignments:

 

The written assignments are designed to help you learn and prepare for the exams. They are due in the beginning of the class on the announced date. There will be a strictly enforced 10% penalty per day for late submissions.

 

Programming Projects:

 

Programs will be graded on correctness as well as style and formatting. The assignments are due on the announced date before 12 midnight. The late submission penalty also applies. Programs that do not compile will not be graded. Turn in assignments to the teaching assistant via email as attachments.

 

Exams:


Quizzes will be given in the beginning of the class. They may or may not be announced in advance. The lowest quiz grade will be dropped at the end of the semester. There will be a midterm exam and a final exam covering lectures and readings (both will be in class, closed book). The final exam (comprehensive) includes topics covered in the entire semester. Exams must be taken at the scheduled time and place. Missed exams cannot be made up.

 

Honor Code Statement:

 

Please be familiar with the GMU Honor Code. Any deviation from this is considered an Honor Code violation. All assignments (written and programming) for this class are individual unless otherwise specified.

 

Tentative Schedule:

 

Weeks

Dates

Topics

Readings

Slides

1

Aug 29

Java Review - Primitives

Ch. 1 & 2

590_1.pdf

2

Sept 5

Labor Day – No class

 

 

3

Sept 12

Objects & Classes

Ch. 3

590_2.pdf

4

Sept 19

Inheritance

Ch. 4

590_3.pdf

5

Sept 26

Algorithm Analysis

Ch. 5

590_4.pdf

6

Oct 3

Recursion & Sorting I

Ch. 7 & 8

590_5.pdf

7

Oct 11 (Tues)

Sorting II, Stacks & Queues

Ch. 8, 11 & 16

590_6.pdf

8

Oct 17

Midterm

 

 

9

Oct 24

Linked Lists

Ch. 17

590_7.pdf

10

Oct 31

Trees

Ch. 18

590_8.pdf

11

Nov 7

Binary Search Trees

Ch. 19

590_9.pdf

12

Nov 14

Priority Queues/Heaps

Ch. 21

590_10.pdf

13

Nov 21

Hash Tables

Ch. 20

590_11.pdf

14

Nov 28

Graphs

Ch. 14

 

15

Dec 5

TBA

TBA

 

16

Dec 12

Final Exam