This document discusses techniques for solving recurrence relations that arise in the analysis of algorithms. It introduces the substitution method, where an educated guess for the solution is verified by induction. The recursion tree method provides intuition by modeling the recursive execution as a tree. Key examples are worked through. The master method is presented as a powerful tool for solving recurrences of the form T(n) = aT(n/b) + f(n), by comparing the growth rates of f(n) and nlogba.