Lecture Material



Week 1: lab 0
1/15/24: mlk no class
1/17/24: syllabus, course Introduction and overview
1/19/24: linux, compilers, debugger, Pis, gdb cheat sheet

Week 2: lab 1
1/22/23: C++ primer
1/24/24: finish primer and Mini lecture: variables and Limits demo cpp code
1/26/24: recursion (last day to drop the 25th)

Week 3: lab 2
1/29/24: Advanced Data Type
1/31/24: Linked list
2/02/24: finish linked lists

Week 4: lab 3
2/05/24: programing assignment 1
2/07/24: Stacks
2/09/24: Queues

Week 5: lab 4
2/12/24: STL: lists, stack, queues, etc
2/14/24: Introduction to Trees
2/16/24: Review for Exam 1

Week 6: Challenge lab 1
2/19/24: no class, program 1 due at 5pm
2/21/24: exam 1
2/23/24: no class

Week 7: lab 5
2/26/24: finish intro, Implementation of trees
2/28/24: trees: AVL , go over program 2
3/01/24: trees: Red-Black

Week 8: lab 6
3/04/24: Binary Heap and Priority Queue
3/06/24: sorting
3/08/24: hashes

Week X: Spring Break
3/11/24: Spring break, no class
3/13/24: Spring break, no class
3/15/24: Spring break, no class

Week 9: lab 7
3/18/24: hashing implementation, program 2 due at 5pm
3/20/24: STL: sets, maps, and pairs and Huffman compression tree
3/22/24: No class, at a conference.

Week 10: Challenge lab 2
3/25/24: Review for Exam 2
3/27/24: Exam 2
3/29/24: no class

Week 11: no lab
4/01/24: go over exam 2, go over program 3, string compares and pattern matching
4/03/24: Java, a primer
4/05/24: finish Java, a primer (last day to withdraw)

Week 12: lab 8 (java)
4/08/24: Regular Expressions: Matching
4/10/24: finishing matching and Regular Expressions: Replacement
4/12/24: Finish Regex

Week 13: lab 9 (java)
4/15/24: Secure coding in c and c++: strings
4/17/24: STL: unordered sets and maps, sorting, dictionary/associate arrays and Data Structures in action
4/19/24: UW, no class

Week 14: lab 10 (java)
4/22/24: Encryption and BlockChain, program 3 due at 5pm
4/24/24: finish Encryption and BlockChain
4/26/24: Overview, unit testing and Code Optimization and performance

Week 15: challenge lab 3
4/29/24: Algorithm Analysis
4/01/24: finish Algorithm Analysis
5/03/24: Review for the final exam

Week 16:
5/8/24: Final exam 8:00am to 10:00am, same classroom