CSCI 255 Fall 2017
Introduction to Algorithms and Discrete Structures
Archived Class
Charles Cusack
Computer Science
Hope College
Main
Schedule
Grading
Gradebook
Homework
Policies
College Policies
Advice
Notes
Programs
Tutorials
CSCI 125
CSCI 255
MATH 131 (01 and 02)
Others
Admin
previous next
today
future
all
Schedule for weeks 1 through 16
Wk
Day
Date
Topic
Resources
Events
1
Tue
Aug 29
Introduction
You can learn anything
video
Selective Soldering Machine
Pick and Place Machine
Assignment 0
Thu
Aug 31
Algorithms
AIDMA "How To"
AIDMA Ch 1
IDAA 1.1-1.3
Assignment 0 due
Fri
Sep 01
Data Structures
Graphs
IDAA 1.4
AIDMA 10 (yes, ten)
HW 1
due
2
Tue
Sep 05
Proofs
AIDMA 2.1-2.3
xkcd: Proofs
Thu
Sep 07
Proofs
AIDMA 2.4-2.8
HW 2
due
Fri
Sep 08
Programming Fundamentals
Algorithms
AIDMA 3.1-3.6
3
Tue
Sep 12
Propositional Logic
AIDMA 4.1-4.2
HW 3
due
Thu
Sep 14
Predicates
Quantifiers
Normal Forms
Bitwise Operations
AIDMA 4.3-4.5
HW 4
due
Fri
Sep 15
Sets
AIDMA 5.1-5.2
4
Tue
Sep 19
Functions
Partitions
Equivalence Relations
AIDMA 5.3-5.4
HW 5
due
Thu
Sep 21
Sequences
AIDMA 6.1
HW 6
due (extended to Friday)
Fri
Sep 22
Summations
Products
AIDMA 6.2
5
Tue
Sep 26
Asymptotic Notation
AIDMA 7.1
IDAA 2.2 (No SRQ)
HW 7
due
Thu
Sep 28
Growth Rates
Algorithm Analysis
AIDMA 7.2-7.3
Fri
Sep 29
Algorithm Analysis
IDAA 2.1,2.3 (SRQ!)
6
Tue
Oct 03
Mathematical Induction
AIDMA 8.1
HW 8
due
Thu
Oct 05
Recursion
Solving Recurrence Relations
AIDMA 8.2-8.3.3
IDAA Appendix B (optional)
HW 9
due
Fri
Oct 06
Analysing Recursive Algorithms
AIDMA 8.3.4-8.4
IDAA 2.4-2.5 (SRQ!)
HW 10
due
7
Tue
Oct 10
No Class
Fall Recess
Thu
Oct 12
Catch up/review
HW 11
due
Fri
Oct 13
AIDMA 1-8, 10
IDAA 1-2
Midterm Exam
8
Tue
Oct 17
Basic Counting
AIDMA 9.1-9.2
Thu
Oct 19
Permutations
Combinations
AIDMA 9.3
Fri
Oct 20
Binomial Theorem
Inclusion-Exclusion
AIDMA 9.4-9.5
HW 12
due
9
Tue
Oct 24
Brute Force
IDAA 3.1, 3.2, 3.4 (SRQ)
Basic Sorting Algorithms Notes
HW 13
due
Thu
Oct 26
Exhaustive Search
BFS
DFS
IDAA 3.5 (SRQ--from now on!)
BFS and DFS Notes
Data Structure Visualizations
Fri
Oct 27
Decrease-and-Conquer
IDAA 4.1-4.2
Basic Sorts
(see Insertion Sort)
BFS and DFS Notes
(see Topological Sort)
Data Structure Visualizations
(See two Topological Sort ones)
10
Tue
Oct 31
Decrease-by-a-Constant-Factor
IDAA 4.4
Josephus Problem Video
HW 14
due
Thu
Nov 02
Variable-Size-Decrease
IDAA 4.5
Fri
Nov 03
Divide-and-Conquer
IDAA 5.1-5.2
Quicksort Notes
Merge Sort Notes
11
Tue
Nov 07
Tree Traversal
Matrix Multiplication
IDAA 5.3-5.4
Strassen's Algorithm Notes
Sorting Worst Case
HW 15
due
Thu
Nov 09
Transform-and-Conquer
IDAA 6.1-6.2
Fri
Nov 10
Transform-and-Conquer
IDAA 6.4-6.5
Heapsort Notes
12
Tue
Nov 14
Problem Reduction
IDAA 6.6
Reduction Examples
HW 16
due
Thu
Nov 16
Space-Time Trade-offs
IDAA 7.1-7.2 (through page 262)
Fri
Nov 17
Dynamic Programming
IDAA 8.1
Dynamic Programming Notes
Fibonacci Demo
Recursive Functions (Fibonacci)
13
Tue
Nov 21
Dynamic Programming
IDAA 8.2
HW 17
due
Thu
Nov 23
No Class
Turkey (or Tofurky or maybe even Turducken)
Stuffing
Mashed Potatoes
Gravy
Thanksgiving Break
Fri
Nov 24
No Class
Thanksgiving Break
14
Tue
Nov 28
Dynamic Programming
IDAA 8.4
Warshall's Algorithm Notes
(Read)
Floyd's Algorithm Demo
Thu
Nov 30
Greedy Algorithms
IDAA 9.1-9.2
MST Notes
Animations
(See Prim's and Kruskal's)
HW 18
due
Fri
Dec 01
Greedy Algorithms
IDAA 9.4
Greedy Algorithms Notes
15
Tue
Dec 05
P, NP, and NP-Complete
IDAA 11.3
P, NP, and NP-Complete Notes
Thu
Dec 07
Quantum Computing
Quantum Computing Notes
Quantum Computation Introduction
(A little more in depth)
HW 19
due
Fri
Dec 08
Review
Ex
Tue
Dec 12
Everything
Final Exam 9-11 am