CISC 3130 Course Syllabus and Homework Assignments
Text: Starting Out With Java From Control Structures through Data Structures, 4th ed.
By - Tony Gaddis and Godfrey Muganda
Introduction: Course Overview & Review
- Inheritance
- Polymorphism
- Abstract Classes and Abstract Methods
- Interfaces
- Exception Handling
- Recursion
HW0: Programming Assignment #0 (Bank Accounts)
Chapter 16: Sorting, Searching, and Algorithm Analysis
- Review of Sorting Algorithms
- the selection sort
- the bubble sort
- the insertion sort
- the quicksort algoritm
- Review of Search Algorithms
- the sequential search algorithm
- the binary search algorithm
- a recursive binary search
- Analysis of Algorithms
- complexity of algorithms
- worst case and average case analysis
- Big O Notation
HW16: Programming Assignment #1 (Sorting and Searching)
Chapter 17: Generics
- Introduction to Generics
- Writing a Generic Class
- Passing Objects of a Generic Class to a Method
- Writing Generic Methods
- Constraining a Type Parameter in a Generic Class
- Inheritance and Generic Classes
- Defining Multiple Type Parameters
- Generics and Interfaces
- Erasure
- Restrictions on the use of Generic Types
HW17: Programming Assignment #2 (Generics)
Chapter 18: Collections and the Stream API
- Introduction to the Java Collections Framework
- Lists
- Sets
- Hashing Algorithms
- Maps
- The Collection Class
- The Stream API
HW18: Programming Assignment #3 (Collections)
Chapter 19: Linked Lists
- Introduction to Linked Lists
- Operations on Linked Lists
- Doubly Linked and Circularly Linked Lists
- Recusion on Linked Lists
HW19: Programming Assignment #4 (Linked Lists)
Chapter 20: Stacks and Queues
- Stacks and Their Applications
- Array Implementation of Stacks
- Linked List Implementation of Stacks
- Queues and Their Applications
- Array Implementation of Queues
- Linked List Implementaion of Queues
- Generic Implementaion of Stacks and Queues
- Queues and Breadth-First Search
HW20: Programming Assignment #5 (StacksAndQueues)
Chapte 21: Binary Trees, AVL Trees, and Priority Queues
- Binary Trees and Their Applications
- Binary Search Trees
- AVL Trees
- Priority Queues
HW21: Programming Assignment #6 (Complete Binary Tree - Heap Order Priority)
Final Examination