Data Structures
CSCI 3323 Fall 2019

Instructor Information

Name : Terry Sergeant   Office Hours
E-Mail :   MW 10:00-11:00; 1:30-3:00
Office : JB 322   Tue 8:30-9:30
Phone : 325-670-1292   Thu 8:30-11:30
Web Site :   F 10:00-11:00


Description : Study of lists, trees and other data structure concepts; algorithms for manipulating data structures; use of data structures in computer data organization and programming languages. Work in Computer Lab required.
Prerequisites : CSCI 2320 (Program Design II)
Textbook(s) : None required. One book that has been used in the past and matches the contents of our course pretty well is: Goodrich, Michael T. and Tamassia, Roberto, Data Structures and Algorithms in Java.

Course Objectives

Students who satisfactorily complete this course will (hopefully) be able to:


Your grade in the course will be earned / calculated as follows:
homework   25%
exam #1   25%
exam #2   25%
final exam   25%
A $\rightarrow$ 90 - 100
B $\rightarrow$ 80 - 89
C $\rightarrow$ 70 - 79
D $\rightarrow$ 60 - 69
F $\rightarrow$ 0 - 59

Homework Assignments

Homework will be assigned and graded on a regular basis. Point values (and lead time) will vary in accordance with the difficulty of the assignment.

A homework assignment is considered late if it is not submitted at or before the beginning of the class period on the day it is due. Late homework assignments will receive a 30% point penalty and must be completed within a week or the original due date. Assignments that miss the one week deadline will receive a grade of 0 (unless there are extenuating circumstances).

In order to do well on exams it will be necessary for each student to work homework assignments independently. There are times, however, when you may become stuck and require assistance. For this reason, the standard regarding independent homework is quite loose:

When working a homework assignment you must not make any sort of electronic copy of work that is not your own. Also, you must type assignments yourself. Failure to abide by these rules is a violation of the academic integrity standards for this course.

Unless directed otherwise, all assignments will be submitted by e-mail to the following address:


All exams are comprehensive. The final exam will take place at the scheduled time during finals week. Exams will never be collaborative in nature so receiving any form of assistance from anyone other than the instructor is a violation of the academic integrity policy. You may only use study aids during the exam if they are expressly allowed by the instructor for that particular exam.

Students with Disabilities

Any student with a professionally diagnosed learning disability and/or other professionally diagnosed disability that may affect course performance may choose to seek accommodation. Eligible students seeking accommodation should contact the Office of the Director of Undergraduate Advising and Disabilities of such as soon as possible in the academic term (preferably during the first two weeks of a long semester) for which they are seeking accommodations. The director will prepare letters to appropriate faculty members concerning specific, reasonable academic adjustments for the student. The student is responsible for delivering accommodation letters and conferring with faculty members. Please refer to the most recent version of the Undergraduate Catalog for the complete policy. (Rachel King, Director of Undergraduate Advising and Disabilities, Office: SM-209, Phone: 670-5842, Email:

Student Support

Peer-to-peer academic support (tutoring) is available for all undergraduate HSU students. The Academic Center for Enrichment (ACE) is located on the first floor of the Richardson Library and serves students Sunday-Thursday and by appointment on Fridays and Saturdays. The ACE is also the home for the Writing Center and the Math Lab. For additional information regarding academic support, contact the Advising Center 325-670-1480.

In addition, all full or part-time students are eligible to receive free, confidential, and voluntary counseling services at HSU. Services include consultation, evaluation, counseling, and crisis support services for students facing issues impacting their overall well-being. To obtain any of these services, students may call The Office of Counseling Services at 325-671-2272, visit their offices on the 2nd floor of the Moody Student Center, or complete the Intake Forms at: Information may also be found on the website:

Academic Integrity

Violations of academic integrity have been described to some degree in other sections of this syllabus.

Cases of suspected academic dishonesty will be handled in accordance with university policies outlined in Undergraduate Catalog and in the Student Handbook. The current catalog prescribes that “no student who has violated the Academic Integrity Policy will be allowed to graduate from Hardin-Simmons University with honors.” Penalties will be assigned at the discretion of the instructor and typically range from failure on the assignment to failure of the course. A general rule-of-thumb is that a first offense (if not too major) will result in a zero on the assignment and a second offense will result in an F for the course. The current catalog states that an F earned in this way cannot be replaced by retaking the course.

Computer Account Use

The instructor may occasionally use email to communicate with the class as a whole or with individuals. When contacting you for this course the instructor will use your HSU email account. You are expected to check your HSU email account at least once per day and you will be held responsible for any content distributed in this way.


Regarding class attendance, the Undergraduate Catalog states:
Accordingly, absence from more than 25 percent of class meetings and/or laboratory sessions scheduled for a course (including absences because of athletic participation) is regarded as excessive, and a grade of F may be assigned as deemed appropriate by the professor.

Course Calendar and Class Structure

We may vary from this outline somewhat but the exam dates are fairly firm.

Week Date Topic / Schedules
Week 1 26 Aug Lists / OOP / Containers
Week 2 02 Sep Complexity of Algorithms
Week 3 09 Sep Trees / BSTs
Week 4 16 Sep BSTs; Generics
Week 5 23 Sep Generics; Wed: Exam #1
Week 6 30 Sep Hashing
Week 7 07 Oct Hashing; Balanced Trees
Week 8 14 Oct Balanced Trees; Priority Queues
Week 9 21 Oct Heaps
Week 10 28 Oct Graphs; DFS/BFS; Wed: Exam #2
Week 11 04 Nov Shortest path; MST
Week 12 11 Nov Multi-threading
Week 13 18 Nov Multi-threading; Sorting
Week 14 25 Nov Sorting; Wed-Fri: Thanksgiving Break!
Week 15 02 Dec Sorting; Bit Ops
-----   Final Exam: Mon 09 Dec at 3:30pm