CSCI 385 Fall 2013
Advanced Data Structures and Algorithms
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 341
Others

Admin
previous     next     today     future     all    

Schedule for weeks 1 through 16

Wk Day Date TopicResourcesEvents

1TueAug 27Introduction
  • Selective Soldering Machine
  • Pick and place machine

  • ThuAug 29
  • Pointers
  • Discrete Mathematics review
  • ADM Preface (pgs v-vii)
  • ADM 1.1-1.3 (pgs 3-19)
  • IDMA 6.1
  • Pointer Basics
  • Pointer Fun with Binky
  • Pointer Fun with Binky (C version on YouTube)
  • Pointers and Memory
  • Pointer Demonstration

  • FriAug 30
  • Algorithms
  • ADM 1.4-1.6 (pgs 19-27)
  • HW 1 due

    2TueSep 03Asymptotic Notation
  • ADM 2.1-2.4 (pgs 31-41)
  • IDMA 5.1 (pgs 101-110)
  • HW 2 due

    ThuSep 05Algorithm Analysis
  • ADM 2.5-2.9 (pgs 41-57)
  • IDMA 5.2-5.3 (pgs 110-119)

  • FriSep 06More Algorithm Analysis

    3TueSep 10Data Structures ReviewADM 3.1-3.5 (pgs 65-85)HW 3 due

    ThuSep 12More Data Structure ReviewADM 3.6-3.9 (pgs 85-98)

    FriSep 13
  • Sorting Basics
  • Heapsort
  • ADM 4.1-4.4 (pgs 103-120)

    4TueSep 17Divide and Conquer
  • Quicksort
  • Mergesort
  • ADM 4.5-4.8 (pgs 120-132)
  • IDMA 6.2 (pgs 140-144)
  • HW 4 due

    ThuSep 19
  • Sorting
  • Related Algorithms

  • FriSep 20Recurrence Relations
  • ADM 4.9-4.10 (pgs 132-139)
  • IDMA 6.3 (pgs 144-155)

  • 5TueSep 24Analyzing Recursive Algorithms
  • IDMA 6.4 (pgs 127-162)
  • HW 5 due

    ThuSep 26More on Recursive Algorithms and Recurrences

    FriSep 27Graphs
  • IDMA 8 (pgs 201-210)
  • ADM 5.1-5.4 (pgs 145-160)
  • Graphs notes
  • Algoraph

  • 6TueOct 01BFS
  • ADM 5.5-5.7 (pgs 161-169)
  • Data Structures Visualizations
  • BFS and DFS Notes
  • HW 6 due

    ThuOct 03DFS
  • ADM 5.8-5.10 (pgs 169-184)

  • FriOct 04AlgoraphHW 7 due

    7TueOct 08Review/Catch upHW 8 due

    ThuOct 10Midterm Exam

    FriOct 11
  • Algoraph Plugin

  • 8TueOct 15No Class (Fall Recess)

    ThuOct 17
  • Minimum Spanning Trees
  • ADM 6.1-6.2 (pgs 191-205)
  • MST Notes
  • Prim's Algorithm Demo
  • Kruskal's Algorithm Demo
  • HW 9 due

    FriOct 18Shortest Path
  • ADM 6.3-6.4 (pgs 205-217)

  • 9TueOct 22
  • Paths and stuff
  • HW 10 due

    ThuOct 24
  • Network Flow
  • Matching
  • ADM 6.5-6.6 (pgs 217-225)
  • Read Network Flow Notes
  • Ford Fulkerson Algorithm Applet

  • FriOct 25
  • ADM 8.1-8.2 (pgs 273-289)
  • Dynamic Programming Slides
  • Recursive Functions Example

  • 10TueOct 29
  • Read Dynamic Programming Notes
  • ADM 8.3,8.6.1 (pgs 289-291,300-301)
  • Dynamic Programming Slides
  • HW 11 due

    ThuOct 31
  • ADM 8.7,8.9 (pgs 301-304,307-310)
  • Dynamic Programming Slides

  • FriNov 01Greedy Algorithms
  • Greedy Algorithms

  • 11TueNov 05
  • Backtracking
  • Pruning
  • ADM 7.1-7.3 (pgs 230-243)

  • ThuNov 07
  • Randomization
  • Hill climbing
  • Simulated Annealing
  • ADM 7.4-7.5 (244-260)
  • HW 12 due

    FriNov 08
  • Strassen's Algorithm
  • ADM 7.6, 7.8-7.10 (pgs 260-263, 266-269)
  • Strassen's Algorithm Slides 1
  • Strassen's Algorithm Slides 2

  • 12TueNov 12
  • Problem Reductions
  • ADM 9.1-9.4 (pgs 316-330)
  • NP-Complete Slides
  • Reduction Examples
  • HW 13 due

    ThuNov 14
  • Reductions
  • P, NP, and NP-Complete
  • ADM 9.5-9.9 (pgs 330-344)
  • Read NP-Complete Notes

  • FriNov 15
  • Approximation Algorithms
  • Parallel Algorithms
  • ADM 9.10 (pgs 344-350)

  • 13TueNov 19Parallel ProgrammingRead Ch 2-3 (pgs 4-24) of Intro to Parallelism and Concurrency
  • Sophomoric Parallelism and Concurrency
  • HW 13 due (additions)

    ThuNov 21
  • Java's ForkJoin
  • Read Ch 4 (pg 24-29) of Intro to Parallelism and Concurrency
  • Intro Slides
  • Analysis Slides
  • Java ForkJoin Framework
  • Java ForkJoin Framework Guide
  • Java ForkJoin Javadoc

  • FriNov 22
  • Parallel Prefix
  • Pack
  • Read Ch 5 (pg 29-35) of Intro to Parallelism and Concurrency

  • 14TueNov 26
  • Concurrency
  • Read Ch 6 (pgs 35-43) of Intro to Parallelism and ConcurrencyHW 14 due

    ThuNov 28No Class (Thanksgiving)

    FriNov 29No Class (Thanksgiving)

    15TueDec 03
  • Concurrency
  • Read Ch 7 (pgs 43-50) of Intro to Parallelism and Concurrency
  • Shared-Memory Concurrency and Mutual Exclusion Slides
  • Programming with Locks and Critical Sections Slides

  • ThuDec 05
  • Locks and stuff
  • Read Ch 8-9 (pgs 50-59) of Intro to Parallelism and Concurrency

  • FriDec 06ReviewHW 15 due

    ExWedDec 11Final Exam, 3-5