I. Course Title: Introduction to Collections, Data Structures, and Algorithms
II. Course Number: ITEC 300
III. Credit Hours: 3 credits
IV. Prerequisites: ITEC 120 (Grade of “C” or better)
V. Course Description:
The course will explore the concepts of simple collections as well as the data structures
and algorithms used to implement them with a particular focus on optimization.
VI. Detailed Description of Content of the Course:
Topics include:
- Collections and Data Structures including stacks, queues, lists, binary tree concepts
and binary search tree concepts.
- Sorting and Searching Algorithms including an introduction to recursive algorithms.
- Analysis of Algorithms and Data Structures with a particular focus upon Optimization.
- The implementation of and use of Collections and Data Structures in the Java Collections
API including the Analysis of the Algorithms used in those implementations, including
both array-based and linked implementations.
VI. Detailed Description of Conduct of Course:
This will be a primarily asynchronous, online course with online meetings to accompany
the asynchronous modules.
VII. Goals and Objectives of the Course:
Students who complete the course will be able to:
- Demonstrate a conceptual understanding of the purpose, algorithmic complexity, and
application of classic collections including stacks, queues, lists and trees.
- Analyze, design, implement and document classic collections including stacks, queues,
and lists.
- Implement and document, including algorithm analysis, an object-oriented solution
in Java to a problem requiring multiple classes and the use of Collections and Data
Structures.
- Demonstrate a conceptual understanding of classic sorting algorithms, their algorithmic
complexity, and their application including the recursive mergesort and quicksort
algorithms.
VIII. Assessment Measures:
Student achievement is measured by tests and evaluation of homework and programming
assignments.
Review and Approval
August 2020