"Introduction to Algorithms" by T Cormen ,C Leiserson, R Rivest and C Stein.
This book covers both basic and advance topics in a well written manner. Correct me if I am wrong but I believe this book is used in some MIT courses.
http://www.amazon.co.uk/Introduction-Algorithms-T-Cormen/dp/...