605.421.71 Foundations of Algorithms

Fall 2007

NEWS ITEMS ( )

  1. NO CLASS DEC 3: Please see email sent today. HW and extra credit assignments due date yet to be determined. Final exam not yet ready for distribution.
  2. Page updated [November 21, 2007]: Posted Week 12 notes.
  3. Page updated [November 21, 2007]: Posted next HW and an extra credit assignment.

Syllabus:

605.421.71 Foundations of Algorithms

Times and Locations:

JHU Weather Related Closings/Emergency Notices: Check Today
  Time Room Building Campus
Class 6:00pm-8:40pm 212 A&R MCC
Office Hours 5:45pm-6:00pm 212 A&R MCC

Text Book:

Introduction to Algorithms, Second Edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein

  1. McGraw-Hill, 2001 printing (ISBN: 0-07-013151-1)
  2. MIT Press, 2001 printing (ISBN: 0-262-03293-7)
  3. Errata information

Semester Lectures

  1. Lecture 01 - What is Algorithm Analysis?
    1. Turing Machines & Petri Nets
    2. The Paranoid Machine: Computing Beyond Turing by Peter Krieg, 10.01.2005, Telepolis.
    3. TestInsertionSort.java
    4. InsertionSort.java
    5. Data Input for TestInsertionSort
    6. RootFinder.java - Method of Golden Sections example
  2. Lectures 02/03 - Mathematics for Algorithm Analysis
    1. Summary of Asmyptotic Notations
    2. lgstar.java - example Java program for pages 55-56 lg*n
    3. lgstar.cpp - example C++ program for pages 55-56 lg*n
    4. Calculus Resources On-line
    5. Calculus resources at The Math Forum @ Drexel
    6. Karl's Calculus Tutor
    7. QuickMath automatic math solutions
  3. Lectures 04/05 - Recurrences
    1. Asymptotic Function Check Sheets in Excel
    2. Summary of Master Method
  4. Lecture 06 - NP-Completeness and Approximation Algorithms
    1. Algorithms and Complexity by Herbert S. Wilf, (online book)
  5. Lecture 07 - Probabilistic Analysis, Randomized Algorithms, and Sorting
    1. LCM_Lattice.xls - analysis of Linear Congruential Method Pseudorandom Number Generators
    2. ARACNE Approximation and Randomized Algorithms in Communication NEtworks
    3. CPS 237 John H. Reif's course at Duke
    4. Marriage Problem
  6. Lecture 8 - Medians and Order Statistics
  7. Lecture 9 - Hash Tables, Binary Trees, R-B Trees, and Augmenting Data Structures
    1. Finding Collision in the Full SHA-1 Xiaoyun Wang, Yiqun Lisa Yin, Hongbo Yu, 2005
  8. Lecture 10 - cancelled
  9. Lecture 11 - Dynamic Programming and Greedy Algorithms
    1. Catalan Numbers:
      1. Catalan Number mathpage.wolfram.com
      2. Catalan Numbers Robert M. Dickau, on The Math Forum
    2. N-Queens Problem:
      1. N-Queens solution - from C Users Journal Obfuscated C Code competition, Nqueens.c and Nqueens.exe
      2. The International Obfuscated C Code Contest
      3. 8-Queens solution - from Horowitz and Sahni Text , 8queens.cpp and 8queens.exe
    3. Coin Change Problem:
      1. Shing and Kuo implemention of T.C. Hu algorithm, coin.pas, coin.exe, and coin.dat
    4. Job Scheduling Problem:
      1. Set Covering Algorithm, Prof. Donald Gross GWU, Jobsched.cpp, Jobsched.exe
      2. Set Covering Algorithm Data files:
        1. Job.dat
        2. Jobs1.dat
        3. Jobs2.dat
        4. Jobs3.dat
  10. Lecture 12 - Amortized Analysis; Basic Graph Algorithms; MST Algorithms
    1. ANDREW CHI-CHIH YAO Professor, Center for Advanced Study, Tsinghua University
      1. Recipient of A. M. Turing Award (2000)
      2. "An O (|E| log log |V|) Algorithm for Finding Minimum Spanning Trees", Information Processing Letters, 4 (1975), 21-23.

Semester Assignments

  1. PGM01 - Due September 17; String Matcher scans from text chapter 32.
  2. HW01 - Due September 24
  3. HW02 - Due October 1
  4. HW03 - Due October 15
  5. PGM02 - Due October 22
  6. HW04 - Due December 3
  7. PGM03 (extra credit) - Due December 3

Semester Support Files and Tools

  1. Research Links:
    1. The Sheridan Libraries of JHU
    2. CiteSeer.IST Scientific Literature Digital Library (reference source)
    3. Copernic Search Tool
    4. ingenta "The most comprehensive collection of academic and professional publications available for online, fax and Ariel delivery."
    5. ACM TechNews
  2. Programming Assignment-Related Items
    1. Java Links - Resources and tools for Java.
    2. C++ Links - Resources and tools for C++.
    3. Object-Oriented Analysis, Design, and Programming Links - Resources and tools for general object-oriented tasks.
    4. Program Support Links - Language-independent tools and resources.
  3. Citing Internet References
    1. Electronic Reference Formats Recommended by the American Psychological Association
    2. MLA Style: Orders for the style manual may be made at this site.
  4. Plagiarism: What It is and How to Recognize and Avoid It
  5. Postscript File Viewer: GSview for Windows.
  6. Note Format this Semester is Acrobat pdf: Get Acrobat Reader Link

Page last updated .

There have been .

Valid HTML 4.01! Valid
      CSS! Quick Navigation Table

Copyright © 2007 John E. Boon, Jr.