CSCI 385 Fall 2015
Advanced Data Structures and Algorithms
Archived Class
Charles Cusack
Computer Science
Hope College
Main
Schedule
Grading
Gradebook
Policies
College Policies
Advice
Notes
Programs
Tutorials
CSCI 125
CSCI 255
MATH 341
Others
Admin
previous next
today
future
all
Schedule for weeks 1 through 16
Wk
Day
Date
Topic
Resources
Events
1
Tue
Sep 01
Course intro
Graph Pebbling
Brickficiency
bricklink
BrickStore
Brickficiency
Thu
Sep 03
Brickficiency
NATCF
1-2
Brickficiency Project 1 due
Fri
Sep 04
Algorithm Analysis
NATCF
3
FA
1-1.3 (pages 1-26)
2
Tue
Sep 08
Asymptotic Notation
NATCF
4
FA
1.4-1.5
AIDMA
7 (optional)
HW 1
due
Thu
Sep 10
Recurrence Relations
NATCF
5
FA
App B.1 (603-607)
FA
App B.3 (626-627)
FA
App B.4 (628-635)
AIDMA
8.3-8.3.3 (288-304) (Optional)
Fri
Sep 11
Algorithm Design and Analysis
NATCF
6
FA
3-3.1, 3.3, 4-4.1
Ch 3/4 SRQ due
3
Tue
Sep 15
Divide-and-conquer
NATCF
7
FA
2-2.4
HW 2
due
Thu
Sep 17
Divide-and-conquer
NATCF
8
FA
2.5, 2.8
FA
2.7 (optional)
Top 4 NATCF topic list due
Fri
Sep 18
Divide-and-conquer
NATCF
9
HW 3
due
4
Tue
Sep 22
Finishing up divide-and-conquer
Brief discussion of parallel divide-and-conquer
NATCF
10-11 (no SRQ)
FA
3.4 (required, no SRQ)
FA
3.5 (Bring SRQ to class)
FA
3.7 (Bring SRQ to class)
Strassen's Algorithm Slides
Strassen's Algorithm
(from a blog)
Other Strassen's Algorithm Slides
HW 4
due
Thu
Sep 24
Dynamic Programming
Optimal Binary Search Trees
Sequence Alignment
FA
4.5 (Bring SRQ to class)
Hoang and John Presenting
Fri
Sep 25
Knapsack (Greedy Versus Dynamic)
FA
4.2 (Bring SRQ to class)
FA
4.3 (Bring SRQ to class)
Nathan Presenting
5
Tue
Sep 29
Greedy Algorithms
Dijkstra's Algorithm
Scheduling
HW 5
due
Cole and Katie presenting
Thu
Oct 01
Applications
Fri
Oct 02
Backtracking
FA
5-5.4
8 Queens Animation
(GIF)
8 Queens Animation
(YouTube)
Project Proposal Due
6
Tue
Oct 06
No Class
Fall Recess
Thu
Oct 08
Backtracking
FA
5.6-5.7
HW 6
due
Fri
Oct 09
Branch-and-Bound
FA
6-6.2
7
Tue
Oct 13
Backtracking
Branch-and-Bound
Work Day!
Thu
Oct 15
NP-Complete
FA
9-9.4
NP-complete notes
HW 7
due
Fri
Oct 16
Approximation Algorithms
FA
9.5
Annotated Bibliography for Project Due
8
Tue
Oct 20
Everything
Midterm Exam
Thu
Oct 22
Genetic Algorithms
FA
10-10.2
Fri
Oct 23
Genetic Programming
Work day
FA
10.3-10.4
GP Tutorial
(mainly for the pictures)
9
Tue
Oct 27
Parallel Programming
OpenMP
Read
Introduction to Parallel Programming
(SRQ)
Thu
Oct 29
Open MP
Watch 1-7 from
Introduction to OpenMP
Open MP Slides
(from videos, for reference)
Open MP Exercises
(code from videos)
Patternlets
(in class)
Open MP Introduction
(for reference)
Submit your Pi program
Fri
Oct 30
Open MP
Watch 8-17 from
Introduction to OpenMP
mandel.c in class
HW 8
due
10
Tue
Nov 03
Open MP
Watch 18-22 from
Introduction to OpenMP
Thu
Nov 05
Open MP
Watch 23-27 from
Introduction to OpenMP
Fri
Nov 06
Parallel Programming
Read Ch 2-3.3 of
SIPC
(SRQ)
Sophomoric Parallelism and Concurrency
Project Readings/Handouts Due
11
Tue
Nov 10
Java's ForkJoin
Read Ch 3.4-3.6 of
SIPC
(SRQ)
Grossman notes 1
Java ForkJoin Framework
Java ForkJoin Framework Guide
Java ForkJoin Javadoc
HW 9
due
Thu
Nov 12
Analyzing Parallel Algorithms
Read Ch 4 of
SIPC
(SRQ)
Read Ch 5-5.2 of
SIPC
(SRQ)
Grossman notes 2
Fri
Nov 13
Parallel Prefix
Pack
Read Ch 5 of
SIPC
(SRQ) (Re-read 5-5.2 and finish the chapter)
Grossman Notes 3
Project Activity Due
12
Tue
Nov 17
Parallel Sorting
Concurrency
Read Ch 6 of
SIPC
(SRQ)
Grossman Notes 4
HW 10
due
Thu
Nov 19
Race conditions
Read Ch 7 of
SIPC
(SRQ)
Grossman Notes 5
HW 10
due (Write up)
Fri
Nov 20
Locks and stuff
Read Ch 8-9 of
SIPC
(SRQ)
Grossman Notes 6
13
Tue
Nov 24
Synchronization
Read Ch 10 of
SIPC
(SRQ)
HW 11
due
Thu
Nov 26
No Class
Turkey (or Tofurky or maybe even Turducken)
Stuffing
Mashed Potatoes
Gravy
Thanksgiving Break
Fri
Nov 27
No Class
Thanksgiving Break
14
Tue
Dec 01
PageRank
PageRank reading (handed out,
SRQ!
)
Page Rank Calculation Spreadsheet
John Dood
presenting
Thu
Dec 03
Data compression
Blelloch Reading (handed out,
SRQ
!)
Data Compression Notes
(in class)
Compression Animation
Katie Brudos
presenting
Exam Problems due (project, normal)
Fri
Dec 04
Public-Key Cryptography
SRQ for all:
FA
11.1-11.2
Stinson reading (handout)
RSA Notes
Hoang Vu
presenting
15
Tue
Dec 08
Digital Signatures
SRQ for all:
Crash Course on Digital Signatures
(read)
Extended Euclidean Algorithm
(read)
Handout (read)
Digital Signatures Notes
(in class)
Cole Watson
presenting
HW 12
due (program)
Thu
Dec 10
Bitcoins
SRQ for all:
Bitcoin Primer
(Read through page 9)
Bitcoin Mining
(Read to "Mining with a pool", including footnotes.)
Block Hashing
(Read all)
Difficulty
(Read all)
Nate Vance
presenting
HW 12
due (write-up)
Fri
Dec 11
Review
Ex
Wed
Dec 16
Everything
Final Exam 3-5 pm