Splay Trees
Whats a splay tree?
A splay tree is a binary search tree where we adjust the tree structure after every access in order to
move the accessed element to the top. This is done by repeatedly performing a series of rotations to the
element and its

15-451 Algorithms, Spring 2015
Recitation # 3
Jan. 27, 2015
1. Independent Set on a Tree
Recall the problem statement for independent set: Given an undirected graph, G, nd
the largest set of vertices, I V , such that no edges go between two vertices in I.

15-451 Algorithms, Spring 2015
Homework # 1
Due: Jan. 22 11:59pm
Your homework should be submitted as a single PDF le using autolab. You are allowed
to work in groups of 2-3, but you must not share written work, and must write your solutions
yourself. Ple

15-451 Algorithms, Spring 2015
Homework 7 (100 pts)
Due: March 26 - 29
oral presentation
Ground rules:
This is an oral presentation assignment. You should work in groups of two or three.
At some point your group should sign up for a 1-hour time slot on t

15-451 Algorithms, Spring 2015
Homework # 4
Due: Mar. 5 11:59pm
Your homework should be submitted as a single PDF le using autolab. You are allowed
to work in groups of 2-3, but you must not share written work, and must write your solutions
yourself. Plea

15-451 Algorithms, Spring 2015
Homework # 4
Due: Feb. 12 11:59pm
Your homework should be submitted as a single PDF le using autolab. You are allowed
to work in groups of 2-3, but you must not share written work, and must write your solutions
yourself. Ple

15-451 Algorithms, Spring 2015
Homework # 8
Due: Apr. 9 11:59pm
Your homework should be submitted as a single PDF le using autolab. You are allowed
to work in groups of 2-3, but you must not share written work, and must write your solutions
yourself. Plea

Algorithm Design and Analysis
Victor Adamchik
CS 15-451
Lecture 12
Feb 25, 2015
Spring 2015
Carnegie Mellon University
The MAX Flow Problem
Plan:
The Ford-Fulkerson algorithm
The Edmonds-Karp algorithm
The Flow Problem
2
s
2
1
1
1
1
3
5
3
1
t
2
Goal: Find

Algorithm Design and Analysis
Victor Adamchik
Lecture 8
CS 15-451
Feb 09, 2015
Spring 2015
Carnegie Mellon University
Graph Algorithms
DFS
Topological Sorting
Classification of Edges
Biconnected Components
Strongly Connected Components
Graphs Traversal
Gr

15-451 Midterm Practice Exam
Page 1 of 6
15-451 Algorithms
Name:
Andrew ID:
Recitation:
Instructions
Fill in the box above with your name, your Andrew ID, and your section.
You are allowed to use one page of (written by hand) notes.
Clearly mark your a

15-451 Midterm Practice Exam
Page 1 of 6
15-451 Algorithms
Name:
Andrew ID:
Recitation:
Instructions
Fill in the box above with your name, your Andrew ID, and your section.
You are allowed to use one page of (written by hand) notes.
Clearly mark your a

15-451 Midterm Practice Exam
Page 1 of 9
15-451 Algorithms
Name:
Andrew ID:
Recitation:
Instructions
Fill in the box above with your name, your Andrew ID, and your section.
You are allowed to use one page of (written by hand) notes.
Clearly mark your a

15-451 Midterm Practice Exam
Page 1 of 9
15-451 Algorithms
Name:
Andrew ID:
Recitation:
Instructions
Fill in the box above with your name, your Andrew ID, and your section.
You are allowed to use one page of (written by hand) notes.
Clearly mark your a

Algorithm Design and Analysis
Victor Adamchik
CS 15-451
Lecture 2
Jan 14, 2015
Outline
Spring 2015
Carnegie Mellon University
Strassens Algorithm
Polynomial Multiplication
1) Strassens Algorithm
2) Karatsuba for Polynomials
3) Legendres Interpolation
2) V

15-451/651: Design & Analysis of Algorithms
Dynamic Programming I
January 26, 2015
last changed: January 28, 2015
Dynamic Programming is a powerful technique that allows one to solve many dierent types of
problems in time O(n2 ) or O(n3 ) for which a naiv

15-451 Algorithms, Spring 2015
Homework # 5
Oral Presentations: Feb. 19-22
This is an oral presentation assignment. You should work in groups of three. Soon
we will post a signup sheet linked o the course web page. At some point your group
should sign up