CS 241 Course Notes from Fall 1998

These notes were created by Dr. Gerda Kamberova using the lecture notes of Dr. Sally Goldman and Dr. Subhash Suri as a starting point. They have not been carefully proofread so let the reader beware. Also, some changes have been made in the lectures given for Spring 99

The notes are provided in both postscript (the "default") and pdf formats.


o Analyzing time complexity, Asymptotic Notation, Sorting Algorithms (in pdf)

o Proof Technique and Math Review, Selecting an Algorithm (in pdf)

o Divide and Conquer Algorithms, Solving Recurrences (in pdf)

o Master Method for Solving Recurrences (in pdf)

o Quicksort and Randomized Quicksort (in pdf)

o Probability Primer (in pdf)

o Computing Expected Time Complexity, Lower bound intro (in pdf)

o Sorting Lower Bound (in pdf)

o Non-Comparison Based Sorting Algorithms (counting sort, bucket sort and radix sort) (in pdf)

o Dictionary ADT, Hashing (in pdf)

o Hashing Analysis, Selecting a Hash Function (in pdf)

o Priority Queue ADT and Heaps (in pdf)

o Dynamic Set ADT and Binary Search Trees (in pdf)

o Skip Lists (an alternative to binary search trees) (in pdf)

o Balanced binary search tree (in pdf)

o B-trees (for dynamic set ADT when using external storage) (in pdf)

o B-tree deletion (in pdf)

o Intro to graphs, representing graphs (in pdf)

o Breadth-first search and depth-first search (in pdf)

o Topological sort (in pdf)

o Strongly connected components algorithm (in pdf)

o Minimum Spanning Tree (MST) problem, Prim's MST algorithm (in pdf)

o Shortest Path Problem, Dijkstra's algorithm (in pdf)

o Overview of Course (in pdf)


Return to the CS241 Home Page