How to Get a Software Engineer Job at Google and Other Top Tech Companies
MIT 6.042J Mathematics for Computer Science, Spring 2015
MIT 6.006 Introduction to Algorithms, Fall 2011
MIT 6.046J Design and Analysis of Algorithms, Spring 2015
MIT 6.854 (Advanced Algorithms), Spring 2016
The Algorithm Design Manual by Skiena
Algorithms (4th Edition)