
ITEC 224
PRINCIPLES OF COMPUTER SCIENCE III
ITEC 224: Principles of Computer Science III
Three hours lecture (3).
Prerequisite: ITEC 220 (Grade of “C” or better) and ITEC 110
Continuation, from ITEC 220, of the development of a disciplined approach to programming with emphasis on data abstraction. Students who have received credit for CPSC 272 may not receive credit for ITEC 224.
This course emphasizes the design and implementation of solutions to problems which require complex data structures. The topics include:
Data Structures
- binary trees
- binary search trees
- heaps* priority Queues
- hash tables
Sorting and Searching
- quicksort
- heapsort
- mergesort
- binary search (arrays and trees)Language Topics
- recursion
- threads and basic synchronizationAnalysis and Design
- patterns
- UML
- Processes* use cases
Recurring Themes
- Analysis of algorithms
- GUI
- Software Engineering
Topics listed above are recommended by the ACM Curriculum Committee and covered in many texts.
Program examples for some problems will be introduced by the instructor, students will then be required to finish some projects for problems similar to those discussed in classes.
Students will progressively learn more advanced techniques such as algorithm design and development, data structures, and the application of software engineering methods from the lectures and programming exercises.
1. To introduce more advanced principles of computer programming and problem solving.
2. To teach algorithm and program development and construction techniques that make use of abstraction, information hiding and more advanced data structures.
3. To provide a foundation for further studies in information technology.
Students will be evaluated based on several major programming assignments and examinations.
None.
DATE ACTION APPROVAL
Feb. 17, 2003 Updated John P. Helm, Chair