Отвечу в стиле "много букв" в двух выкладках. Первая - если вы и правда хотите обуздать мир математики (но учтите что это совершенно не факт поможет вашей карьере), второй - краткий и быстрый.
Первый:
Если вы хотите идти в алгоритмы, я бы начал с дискретной математики. Эта сфера очень хорошо покрывает базовые потребности (комбинаторика, алгоритмы, логика).
Есть много-много вариантов как её учить, могу предложить два варианта:
- На портале stepic.org был курс "Дискретная математика" который неплохо покрывал базу по предмету, с большим-большим упором на комбинаторику и практические решения.
- Книга "Дискретная Математика и Комбинаторика" за авторством Андерсона. Это просто превосходная теоретическая база для погружения в информатику. Начинают с логических доказательств и утверждений, заканчивая теорией чисел и теорией информации.
Вообще, с такими запросами вам в MOOC. На Coursera, Khan Academy, Udacity можно найти очень - очень много курсов как базовых для совсем новичков, так и очень сильные и углубленные знания как аналитическую комбинаторику и дискретную оптимизацию.
Начните с алгоритмов и основ математики: например, с 25-го января стартует известный курс "Algorithms, Part I", а дальше по мере его прохождения читайте дополнительную литературу по разным областям. Регистрируйтесь на SPOJ/Topcoder и углубляйтесь по сере освоения тем. Из основ: курсы по мат статистике на Udacity, Linear Algebra на Khan Academy и Комбинаторика на Coursera от МФТИ.
Второй:
Но, на самом деле, вычислительные методы, глубокая дискретная математика, математический анализ или линейная алгебра вам скорей всего не пригодится, а для знания основных алгоритмов и структур данных надо знать немного асимптотического анализа, и теории вероятности. Потому эти две универсальные книги вам помогут достичь цели крайне быстро:
- "Mathematics for Computer Science" - книга в свободном доступе от преподавателей MIT. Первая ссылка по такому запросу вас наверняка выведет на PDF. 500 страниц концентрированных знаний в которых покрываются все необходимые знания для уверенного программирования
- "Конкретная Математика" - настольная Библия для тренировки мозгов, решения задач и выработки математическог аппарата программиста и алгоритмического мышления.
Кстати, записаться на курс алгоритмов и проходить его советую в обеих случаях.
Удачи!