CSE 680 Introduction to Analysis of Algorithms and Data Structures

News

Note: I am going green this quarter, so visit this site often for class updates. I encourage you to go green as well and follow the notes on-line. Note, that the material will change as the course progresses this quarter, so please do not print and refer to the old printed version in the future.

Description

Performance analysis considerations in design of algorithms and data structures; asymptotic analysis, recurrence relations, probabilistic analysis, divide and conquer; searching, sorting, and graph processing algorithms.

Level, Credits, Class Time Distribution, Prerequisites

Level Credits Class Time Distribution Prerequisites
U/G 3 3 cl 560 or 668 or ECE 668; Stat 427; Math 566

Intended Learning Outcomes

Topics (not in order)

Number of Hours Topic
2 Overview of Algorithims and Sorting
1 Mathematical review
3 Introduction to analysis of algorithms
3 Use of asymptotic notation
3 Analysis of iterative algorithms
3 Analysis of recursive algorithms
3 Definition of a non-trivial problem and analysis of algorithms that solve that problem (e.g., median finding)
3 Divide-and-conquer, backtracking, branch-and-bound
3 Probabilistic algorithms
4 Graphs and graph algorithms
2 Exams and review

Grader

grader image

Yang Zhang

  • Email: zhangya -at- cse.ohio-state.edu
  • Office Hours:
    • W 9:30-11:00
    • M 3:30-5:00
  • Office Hours Location: Boltz 118, #18

 

Prof. Crawfis' Office Hours

See Dr. Crawfis' Schedule.

Texts and Other Course Materials

Book Cover

Introduction to Algorithms, 2nd Edition

Cormen, Leiserson, Rivest and Stein

Course Notes

Powerpoint slides

Reading Assignments

Below are the reading assignments for the course. Unless otherwise noted, all readings are from the required textbook.

Homeworks (due weekly in class)

  1. Due Wednesday, Septmeber 30 beginning of class: From your book do exercises: 1.2-3, Problem 1-1, 2.1-1, 2.1-3, 2.2-2
  2. Due Wednesday, October 7 beginning of class: From your book do exercises: 2.3-1, 2.3-3 (make very formal), 2.3-4, 2.3-7, Problem 2-2, 3.1-1, 3.1-4, 3.2-2, Problem 3-3, Problem 3-4.
  3. Due Friday, October 16 beginning of class: From your book do exercises: 4.1-1, 4.1-6, 4.2-2, 4.2-4, Problems 4-1 (4 points) and 4-2 (2 points).
  4. Due Wednesday, October 28 beginning of class: From your book do exercises: 6.1-3, 6.1-7, 6.2-1, 6.4-3, 6.5-6, 7.1-1, 7.2-5.
  5. Due Monday, November 9 beginning of class: From your book do exercises: 11.2-1, 11.2-2, 11.3-3, 11.4-1, Problem 11-3, 12.1-1, 12.1-4, 12.2-1, Appendix B.4-4 and 22.1-6
  6. Due Monday, November 16 beginning of class: From your book do exercises:
  7. Due Monday, November 30 beginning of class: From your book do exercises:
  8. Due Wednesday, December 2 beginning of class: From your book do exercises:

Lab Assignments

Other Web Goodies and Tools

Grades

Homework 32%
Programming 8%
Midterm Exam 30%
Final Exam 30%

Schedule (Tentative - based on last quarter taught)

Lecture # / topic(s)

  1. Course overview, Algorithm Design
  2. Data Structures Review, Graph Data Structures
  3. Data Structures continued, Insertion Sort
  4. Insertion Sort Correctness, Bubble Sort, Selection Sort.
  5. Mathematical review and Asymptotic analysis.
  6. Merge sort
  7. Recurrences and the Master Method
  8. The Master Method and Heaps
  9. Heapsort and Quicksort
  10. Quicksort and Minimum Comparison sorting complexity
  11. Counting sort, Radix sort, Bucket sort
  12. Hash Tables
  13. Hashing
  14. Binary Search Trees, Augmented Data Structures
  15. Binary Search Trees
  16. Midterm Review
  17. Midterm
  18. Greedy Algorithms
  19. Graph Traversal, Depth-first, Breadth-first
  20. Topological Sorting, cycle detection
  21. Minimum Spanning Trees
  22. Shortest Path, Dijkstra's Algorithm
  23. Final Review

Relationship to BS-CSE Program Outcomes/EC 2000 Criterion 3 Outcomes

a b c d e f g h i j k
*** ** *** ** ***

 


Last modified: November 23, 2009 11:52 AM