Professor: Darci L. Burdge
Phone: 572-7976
Office: C3064
Office Hours: Tuesday (
E-mail: Darci.Burdge@ncc.edu
![]()
Class Meets:
Monday – 9:30 - 12:15 (B221)
Wednesday - 11:00 - 12:15 (B209)
Thursday - 10:00 - 11:15 (B215)
Prerequisite:
Students must have completed
Textbook:
Java Software Structures – Designing and Using Data Structures, 3rd
Edition by Lewis J. and Chase J., Addison-Wesley, 2010.
Electronic Resources:
Students will use email and Blackboard (an online course management tool)
throughout this course. Students are expected to read their
Computer Center Requirement:
As part of this course, you should avail yourselves of further study and/or
educational assistance available in the Computer Learning Center, B225. These
activities and use of the resources provided are deemed an integral part of the
course, and will help you master necessary knowledge and skills. NOTE: In
order to use the Learning Center you must present a valid
Students with Disabilities:
If you have - or suspect you have – a physical, psychological, medical, or
learning disability that may have an impact on your ability to carry out the
assigned coursework, I urge you to contact the staff at the Center for Students
with Disabilities (CSD), Bldg. U, 572-7241, TTY 572-7617. The counselors at CSD
will review your concerns and determine with you what accommodations are
necessary and appropriate. All information and documentation will be kept
confidential. I encourage students with disabilities to discuss accommodations
with me.
Withdrawal Policy:
I will grant a grade of "W" any time through March 26. You must
decide by March 26 whether or not you wish to withdraw from this class. It is
the student’s responsibility to file a signed, drop/add form with the registrar
if you wish to withdraw from this class. I will not withdraw any student for
excessive absences or failure to take the final exam. Consideration will be
given to students who request a "W" after the withdrawal date.
Projects:
There will be approximately 5 programming projects. All projects are expected
to be handed in on time. You will lose considerable points for late projects.
You are required to submit a program that is syntax free and producing some
output, even if the output is incorrect. I will not grade programs which
contain syntax errors. On the day a project is due you must submit the
appropriate files prior to the beginning of class.
Exams:
There will be 2 exams given throughout the semester in addition to a final
exam. Make-up exams will not be given. Consideration will be given to those
students who contact me before the exam (via e-mail or phone) and provide a
valid, documented reason for missing the exam.
Hands-On:
There will be approximately 12 Laboratory meetings. Students will work
in pairs on the assignment distributed at each of these meetings and will be
responsible for completing and submitting these assignments by the required due
date. Due to the fact that you will be working in pairs, it is essential that
you be present and on time for all laboratory meetings.
Attendance:
Attendance is a critical aspect of this course. As such, attendance will be
taken every day at the beginning of class. Please note that every late
arrival/early departure will count as half an absence. Since attendance is so
critical to learning, students who attend class will be given special
consideration at the end of the semester. Students who have no more than 3
absences will have their lowest laboratory assignment dropped and 5 points
added to their project average. The new laboratory and project averages will be
used in the calculation of their final grade. Students are responsible for all
material missed due to absence and should contact me or another student prior
to the next scheduled class meeting to determine what was covered and/or
assigned.
Grading Policy:
Final grades will be determined by the following percentages:
![]()
Outline:
The following is intended to provide
you with an outline of how this course will progress. Dates of exams, project
assignments, and project due dates may be adjusted to account for progress of
the class as a whole. The Laboratory component of this course should
re-enforce material presented in the classroom.
|
Jan. 23 |
Introduction, course outline and policies; review of classes, objects, methods, and arrays |
|
Jan. 25, 26 |
Review of classes, objects, methods, and arrays (1D and 2D) continued…Project 1 Assigned |
|
Jan. 30 |
Lab #1 - Setting up accounts, review of classes, objects, methods and arrays |
|
Feb. 1, 2 |
Inheritance |
|
Feb. 6 |
Lab #2 – Inheritance |
|
Feb. 8, 9 |
Exception handling - Feb. 9: Project 1 Due, Project 2 Assigned |
|
Feb. 13 |
Lab #3 – Exception handling |
|
Feb.
15, 16 |
Introduction to stacks using an array-based
implementation, introduction to generics |
|
Feb. 27 |
Lab #4 – Stacks |
|
Feb. 29 |
Review for exam 1 - Project 2 Due |
|
Mar. 1 |
Exam 1 |
|
Mar. 5 |
Lab #5 – Introduction to linked structures |
|
Mar. 7, 8 |
Stacks: a linked implementation, introduction to queues - Mar. 7: Project 3 Assigned |
|
Mar. 12 |
Lab #6 – the LinkedQueue class |
|
Mar. 14, 15 |
Queues: an array-based implementation |
|
Mar. 19 |
Lab #7 – the CircularArrayQueue class |
|
Mar. 21, 22 |
Unordered Lists: an array-based implementation - Mar. 21: Project 3 Due |
|
Mar. 26 |
Lab #8 –
Array-based unordered lists - Project 4 Assigned |
|
Mar. 28, 29 |
Ordered Lists: an array-based implementation |
|
April 9 |
Lab #9 – Array-based ordered lists |
|
April
11 |
Intro to
unordered linked lists |
|
April
12 |
Review for exam 2
- Project
4 Due |
|
April 16 |
Exam 2 |
|
April
18, 19 |
Unordered Lists:
a linked implementation - April 18: Project 5 Assigned |
|
April 23 |
Lab #10 – Unordered linked lists |
|
April 25, 26 |
Ordered linked lists, intro to recursion |
|
April 30 |
Lab #11 – Recursion |
|
May 2, 3 |
Binary trees and binary search trees |
|
May 7 |
Lab #12 – Binary search trees - Project 5 Due |
|
May
9, 10 |
Binary search
trees continued… |
|
May 14 |
Review for final
exam |
|
May 16, 17 |
Final Exam - Parts 1 and 2 |