CPSC 1110 Data Structures and Program Design

(Non-IA course)

Course Description

Continued development of programming style using abstract data structures and top-down design. Debugging and testing of large programs. Emphasis on algorithm development. List processing. Recursion. (Stacks, trees, searching and sorting.) Lecture 3 hours, laboratory 2 hours. Prerequisites: CPSC 1100 with a minimum grade of C and MATH 1720 or MATH 1830 or MATH 1910 or MATH 1920 with a minimum grade of C or department head approval.  Laboratory/studio course fee will be assessed. Supplementary course fee assessed.


Big Java, Cay Hortsman, Wiley, ISBN: 978-0-470-50948-7

Lecture Notes





  • Fox, B. L. (September 01, 1978). Data Structures and Computer Science Techniques in Operations Research. Operations Research, 26, 5, 686.
  • Management of evolving map data: Data structures and algorithms based on the framework map. (December 10, 1995). Genomics, 30, 3.)
  • Rist, R. S. (October 01, 1995). Program Structure and Design. Cognitive Science, 19, 4, 507-562.
  • Lee, O., Yang, H., & Petersen, R. (August 01, 2012). A divide-and-conquer approach for analyzing overlaid data structures. Formal Methods in System Design, 41, 1, 4-24.
  • Sutter, H. (January 01, 2008). Choose concurrency-friendly data structures.(Effective Concurrency). Dr. Dobb's Journal, 33, 7.)


  • Wulf, W. A. (1981). Fundamental structures of computer science. Reading, Mass: Addison-Wesley.
  • COCOON (Conference), In Du, D., & In Zhang, G. (2013). Computing and combinatorics: 19th International Conference, COCOON 2013, Hangzhou, China, June 21-23, 2013. Proceedings.
  • Wirth, N. (1976). Algorithms + data structures=programs. Englewood Cliffs, N.J: Prentice-Hall.
  • Dale, N. B., Joyce, D. T., & Weems, C. (2002). Object-oriented data structures using Java. Sudbury, Mass: Jones and Bartlett Publishers.
  • Ford, W., & Topp, W. R. (2002). Data structures with C++ using STL. Upper Saddle River, NJ: Prentice Hall.


Secure Use

General Security Policy: Cyber Ethics

Cyber Ethics

General Security Policy: Information Technology Security Evaluation Criteria (ITSEC)

ITSEC Definition

General Procedures: Inference

Inference Definition

General Procedures: Rainbow Series

Rainbow Series

General Procedures: NSTISSAM COMPUSEC/1-99 Insider Threat to Government Computer Systems

NSTISS Glossary

General Countermeasures and Safeguards: Computer Law

Computer Law

General Countermeasures and Safeguards: Computer Media

Computer Media

General Countermeasures and Safeguards: Evaluate Security Testing Tools

Security Testing Tools

Administrative Countermeasures/Safeguards: Control Management

Change Control
Control Management

Administrative Countermeasures/Safeguards: Privacy Act

Privacy Act of 1974

Operations Policies/Procedures: Keystroke Monitoring

Keystroke Monitoring

Operations Policies/Procedures: Disaster Recovery Planning

Disaster Recovery


Policy and Procedures: Incident Response

Incident Response

Policy and Procedures: Witness Interrogation

Witness Interrogation

Operations Countermeasures/Safeguard: Computer Attacks

Computer Attacks
Computer Virus Timeline

Operations Countermeasures/Safeguard: Computer Emergency Readiness Teams



Administrative Policies/Procedures: Approval to Operate

Approval to Operate

Administrative Policies/Procedures: Configuration/Change Control

Change Control

Administrative Policies/Procedures: Copyright Protection

Copyright Protection

Administrative Policies/Procedures: Patch Management

Patch Management

Administrative Policies/Procedures: Records Management

Records Management

Administrative Policies/Procedures: Wireless Use Policies

Wireless Use Policy

Anomalies and Integrity

General Risk Management: Computer System Risk Management

Risk Management

Access Control Safeguards: Computer System Access Control

Access Control

Access Control Safeguards: Protected Distribution Systems

Protected Distribution System

Access Control Safeguards: Information Systems Access Restrictions

Access Restrictions


Access Control Mechanisms: KMI Applications

Key Management

Access Control Mechanisms: Single Sign-on

Single Sign On

IA Sites