Всё сложно.
Если кратко: обязательно
Кнут и
Кормен, остальное по желанию. Первую надо иметь как набор настольных томиков, читать не обязательно =) Я серьёзно, одна из немногих книг, что просто лежа рядом на столе повышает интеллект на 10. Кормен, ну, он другой. Его надо вдумчиво читать и выполнять упражнения. Все. То есть желательно, можно выборочно, структура книги весьма и весьма это позволяет. Математики почти нет, зато есть именно алгоритмы и структуры. Собственно, то, что программисту и надо. Выполнение всех упражнений повышает интеллект на 100500, так что этот вариант явно предпочтительнее, однако банальное наличие этой книги интеллект не повысит =)
Из чисто математических ресурсов очень рекомендую
khan academy - нашикарнейший портал невыносимо крутых знаний. Но самое крутое, что я там пока вижу - это ответ на мой
вопрос. Там всё очень упорядочено, от правила Бернулли — Лопиталя до закона Чебышева, от начал Аль-Хорезми, до проблем тысячелетия. В общем, очень круто, очень структурировано и очень... Просто очень. Хотя надо уточнить - он не чисто математический, у него есть чисто математический раздел.
UPD.
Dmitry напомнил мне про
Кнута, Грэхема с Поташниковым. Мало того, что личности сами по себе довольно интересные, так ещё и книга поистине получилась замечательная. И хотя можно долго спорить о необходимости программисту иметь определённые познания в математике - лично я почувствовал определённое просвещение, прочитав эту книгу.