First Semester Weeks Topic Lab Assignment 1 4 Solitaire Stacks and Queues – 5 7 Classes and Interfaces TBA – Inheritance; Polymorphism classes and interfaces; Specify the purpose and goals for a problem; Decompose a problem into classes, define relationships and responsibilities of those classes; Design and implement a set of interacting classes; Design an interface. 6 TREK N/A TAG Trek 8 10 Lists and Iterators Singly Linked – Implementation and use of linked lists List ListNode) (singly, doubly, and circular); Traversals, insertions, deletions, iterators. 11 12 Recursion Recursive Sorted – Understanding and implementing structural and procedural Linked List recursion. 13 15 Binary Search Morse – Implementation (using and use of Binary Search TreeNode) Trees (traversals, insertions, deletions, iterators); 16 Semester Finals Second Semester Weeks Topic Lab Assignment 17 20 Look-up Tables and Hashing Search Engine – Implementation and use of look-up tables and hash tables (traversals, insertions, deletions, iterators); hashCode method; JCF Set, Map, HashSet, HashMap. 21 23 Heaps and Priority Queues Heapsort – Implementation and use of heaps and priority queues (traversals, insertions, deletions, iterators); JCF and Queue PriorityQueue. 24 26 Sorting and Big-O Analysis Sort Detective – 27 32 Graphs Package – Implementation and use of graphs and graph algorithms (Dijkstra) (Shortest Path algorithms including Dijkstra’s Algorithm, Huffman Topological Sorting, Acylic Shortest Path, Critical Path Analysis
First Semester Weeks Topic Lab Assignment 1 – 4 Stacks and Queues Solitaire 5 – 7 Classes and Interfaces Inheritance; Polymorphism classes and interfaces; Specify the purpose and goals for a problem; Decompose a problem into classes, define relationships and responsibilities of those classes; Design and implement a set of interacting classes; Design an interface. TBA 6 TREK TAG Trek N/A 8 – 10 Lists and Iterators Implementation ListNode) and use of linked lists (singly, doubly, and circular); Traversals, insertions, deletions, iterators. Singly Linked List 11 – 12 Recursion Understanding and implementing structural and procedural recursion. Recursive Sorted Linked List 13 – 15 Binary Search Implementation (using TreeNode) and use of Binary Search Trees (traversals, insertions, deletions, iterators); Morse 16 Semester Finals Second Semester Weeks Topic Lab Assignment 17 – 20 Look-up Tables and Hashing Implementation and use of look-up tables and hash tables (traversals, insertions, deletions, iterators); hashCode method; JCF Set, Map, HashSet, HashMap. Search Engine 21 – 23 Heaps and Priority Queues Implementation and use of heaps and priority queues (traversals, insertions, deletions, iterators); JCF Queue and PriorityQueue. Heapsort 24 – 26 Sorting and Big-O Analysis Sort Detective 27 – 32 Graphs Implementation and use of graphs and graph algorithms (Shortest Path algorithms including Dijkstra’s Algorithm, Topological Sorting, Acylic Shortest Path, Critical Path Analysis Package (Dijkstra) Huffman
Dual-Credit-Syllabus-2017-2018.docx