The document discusses recurrence relations and the Master Theorem for solving recurrences that arise from divide-and-conquer algorithms. It introduces recurrence relations and examples. It then explains the substitution method, iteration method, and Master Theorem for solving recurrences. The Master Theorem provides a "cookbook" for determining the running time of a divide-and-conquer algorithm where the problem of size n is divided into a subproblems of size n/b and the cost is f(n). It presents the three cases of the Master Theorem and works through examples of its application.