Reinforce and strengthen problem-solving skills using abstract data types and introduce software development practices. Emphasize the use of searching and sorting algorithms and their complexity, recursion, object-oriented programming, and data structures.
Prerequisites
A grade of “C” or better in ICS 111 or consent of instructor.
Course Outcomes
- Use and implement abstract data types such as lists, stacks, queues, and trees.
- Select the appropriate searching or sorting algorithm based on the algorithm’s behavior.
- Develop recursive algorithms and programs.
- Use standard libraries or packages as well as advanced object-oriented programming techniques (polymorphism, inheritance, and encapsulation).
- Produce robust and secure programs using exception handling and extensive program testing.