I want to learn algorithms I did study applied math and dealed almost exclusively with the creation of ode/pde solver code. Now, I want to increase my knowledge in some aspects and I want to learn some basic algorithms like A*, MinMax, ... (not limited to searching; I am also interested in the basics of optimization and machine learning) and their implementation.

Is there a good resource (book, online course) available for me to learn this from? Any help is appreciated. I have no other CS-related background except my math degree.
Consider the textbook (from my undergrad years, many years ago):

Bazaraa, M. S.; Jarvis, J. J.; and Sherali, H. D. (1990). Linear Programming and Network Flows. 2nd Edition. New York: John Wiley.

Consider the recent edition of the textbook too.