Algorithm development, program logic, program design strategies, program implementation strategies. Program correctness and program verification, algorithm analysis and computational complexity. User defined structures, data types, specification requirements, sequential and direct access files, sorting, searching, and computer organization. Abstract data types including stacks, queues, and linked lists. Computer programming solutions to several laboratory exercises. May be taken concurrently with CSCI 1323 or 2322.
Prerequisite: CSCI 1320 or consent of instructor.