The document describes several algorithms for dynamic programming and graph algorithms:
1. It presents four algorithms for computing the Fibonacci numbers using dynamic programming with arrays or recursion with and without memoization.
2. It provides algorithms for solving coin changing and matrix multiplication problems using dynamic programming by filling out arrays.
3. It gives algorithms to find the length and a longest common subsequence between two strings using dynamic programming.
4. It introduces algorithms to find shortest paths between all pairs of vertices in a weighted graph using Floyd's and Warshall's algorithms. It includes algorithms to output a shortest path between two vertices.