IMHO the books being advised here are too high level. Its like trying to read about Computer networking basics from RFCs. Some advise are equivalent to searching for a reason to learn "C" by appreciating what can be done with "C" by reading books on Linux Kernel programming.
I will mention a few books which by no means are undergraduate level, but are per-requisite for undergraduate level study. Are you thorough with books given below? These books are available through http://gen.lib.rus.ec.
1. Higher algebra - Hall and Knight 2. Trigonometry I - Loney 3. Coordinate geometry I - Loney 4. Calculus of one variable - Maron
Download the books and check if you already know all those. Once done, then go for the higher level books most the people advising here.