C455 - Analysis of Algorithms I

Document last modified: 

Please note: Firm Exercise and Homework due date policy to allow timely posting of answers.

Date

Notes, Readings, Activities

Homework
Due
Exercise
Due
Tests

Jan
9

Chapters 1 & 2
Answers

     

16

 

  1 Answers  
18 Analysis Activity Solution Homework 1
Answers
   

23

Chapter 3 Answers

  2 Answers  
25 Activity Solution Homework 2 
Answers
   

30

Chapter 4 Answers
Substitution Activity Solution

  3 Answers  
Feb
1
Big O Substitution Activity Solution
 
Homework 3
Answers
   

6

Recursion Tree Activity Solution
Master Method Activity Solution

     
8

Chapter 6 Answers
 

Homework 4
Answers
4 Answers  
13 Review
Recurrence Activity Solution
     

15

Chapters 1-4

    Test 1
Review Notes
20 Heap Activity Solution
Heap Sort Activity Solution
Homework 7
Answers
   

22

Chapter 11  (11.1, 11.2, 11.3-11.3.2)
Answers
  5 Answers   
27 Chapter 12
Answers
Homework 5
Answers
6 Answers  
Mar
1
Chapter 18
Answers
     

6

Review B-Tree
Insert Activity Solution
Delete Activity Solution

Homework 6
Answers
7 Answers
8 Answers 
 

8

Chapters 6, 11, 12, 18

    Test 2
13 Chapter 8.1 Answers
Chapter 21.1-21.3 Answers
     
15   Homework 8
Answers
   
20 Chapter 22 Answers
BFS Activity Solution
     

22

SCC Activity Solution   9 Answers  
Apr
3
Chapter 24 - Single Source Shortest Paths Answers
Single Source Shortest Paths Activity Solution
Dykstra's Activity Solution
Homework 9
Answers
 
 

5

Chapter 15 - Dynamic Programming Answers      
10 Dynamic Programming Activity Solution
Chapter 16 - Greedy Algorithms Answers
Huffman Activity Solution
Homework 10
Answers
10 Answers  

12

Backtracking and Best-First Answers
Backtracking Activity Solution
Best-First Activity Solution
Chapter 23 - Minimum Spanning Trees

     
17

Chapter 34 Answers
Activity Solution

  11 Answers  
19 NP-Complete Executive Summary
Last Class - Review
  12 Answers  
26 Last chance for Homework 11 Homework 11
Answers
   
May
1
Chapters 8.1, 15, 16, 21.1-21.3, 22, 24, 34,
Backtracking and Best-First
    Test 3 5:45P

 

Instructor: Raymond F. Wisman
Office: LF122
TR 4:30-5:30P and by appointment
Class:             CV107 TR 5:30-7:20P
Phone: 941-2465
Email:
Web: www.ius.edu/rwisman/C455
Text: Introduction to Algorithms (2e) by  T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein  ISBN: 0262032937
Course: C455 Analysis of Algorithms I (4 cr.) P: C251, C343, Math M120/M216.

Models, algorithms, recurrences, summations, growth rates. Probabilistic tools, upper and lower bounds; worst-case and average-case analysis, amortized analysis, dynamization. Comparison-based algorithms: search, selection, sorting, hashing. Information extraction algorithms (graphs, databases). Graphs algorithms: spanning trees, shortest paths, connectivity, depth-first search, breadth-first search. General methods: dynamic programming, backtracking, best-first, greedy algorithms.

Software:        C++ and Java
Goals: See C455 Course Goals
Grade Scale:

Click for 
Grade Book:

A+ 97% - 100%    A  93% - 96%        A-  90% - 92%
B+ 87% -  89%     B  83% - 86%        B-  80% - 82%
C+ 77% -  79%     C  73% - 76%        C-  70% - 72%
D+ 67% -  69%     D  63% - 66%        D-  60% - 62%
F      0% -  59%
Course          
Evaluation:   
Homeworks 40%                     Homework grade reduced by 50% for each calendar day late. Answers posted after 2 days.
Exercises 10%                         Exercise answers posted on due date. No late work accepted. 
Exams 50%
Ethics: All work is subject to the Indiana University Code of Student Ethics.

Learning requires a partnership between the instructor, authors, researchers and students; therefore students are encouraged to use any and all resources available to solve homework problems and complete programming assignments. However, students must:

  1. clearly cite any contributing source; a text, another student, the Internet, etc.
  2. create their own solutions

For example, students may work in groups to solve homework problems provided each student creates their own (not copies) solutions  and clearly lists all group members or other sources such as authors of texts or on the Internet. Likewise, software that performs assigned functionality may not be directly used but the source code may be consulted provided it is subsequently cited. Changing the spelling of algorithm identifiers does not constitute creating an original solution. It is absolutely essential to note that failure to cite any contributing source will be considered cheating regardless of the reason for the omission. Likewise, verbatim duplication of any source, whether from another student, a text, etc. will always be considered plagiarism.

Violation of any aspect of this policy will result in a failing grade for the course.

Resources: Ryan Weathers Notes