Statistical Mechanics: Algorithms and Computation