20804216
Computer Science 2
Course Information
Description
Topics covered include: inheritance, polymorphism, abstract classes, interfaces, exceptions, generics, singly-linked lists, stacks and queues via linked-lists, recursion, algorithm complexity, binary search, selection sort, insertion sort, quicksort, merge sort, binary search tree (BST) insertions, deletions, removals, in-order transversal, and heaps.
Total Credits
3
Course Competencies
-
Apply object-oriented programming principlesAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaProject includes encapsulation, inheritance, polymorphism, and abstractionImplement modular, reusable Java classes and class hierarchies
-
Apply advanced data structures to programsAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaUse the Java data structures linked lists, stacks, queues, and binary search treesSelect appropriate structures based on problem requirements
-
Construct and manipulate linked data structuresAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaInclude singly and doubly linked listsImplement algorithms that traverse, search, insert, and delete nodes
-
Analyze and compare algorithmic complexityAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaUse Big-O notationEvaluate the time and space efficiency of iterative and recursive solutions
-
Develop recursive algorithmsAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaIdentify when recursion is an appropriate or inefficient solution strategy
-
Use interfaces and abstract classesAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaDefine generalized behaviorsSupport polymorphic method invocationDesign extensible software systems
-
Implement searching and sorting algorithmsAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaAssess performance characteristics of binary search, selection sort, insertion sort, merge sort, and quicksort
-
Manage error conditionsAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaApply exception handling mechanismsWrite robust programs using try/catch/finally and custom exceptions
-
Read from and write to filesAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaUse I/O libraries to process structured data
-
Use generics to implement type-safe data structures and methodsAssessment StrategiesSkill demonstration, self-assessment, and/or examCriteriaInclude generic classes and bounded type parameters