
Discrete mathematics is quickly becoming one of the most important areas of mathematical research, with applications to cryptography, linear programming, coding theory and the theory of computing. This book is aimed at undergraduate mathematics and computer science students interested in developing a feeling for what mathematics is all about, where mathematics can be helpful, and what kinds of questions mathematicians work on. The authors discuss a number of selected results and methods of discrete mathematics, mostly from the areas of combinatorics and graph theory, with a little number theory, probability, and combinatorial geometry. Wherever possible, the authors use proofs and problem solving to help students understand the solutions to problems. In addition, there are numerous examples, figures and exercises spread throughout the book. László Lovász is a Senior Researcher in the Theory Group at Microsoft Corporation. He is a recipient of the 1999 Wolf Prize and the Gödel Prize for the top paper in Computer Science. József Pelikán is Professor of Mathematics in the Department of Algebra and Number Theory at Eötvös Loránd University, Hungary. In 2002, he was elected Chairman of the Advisory Board of the International Mathematical Olympiad. Katalin Vesztergombi is Senior Lecturer in the Department of Mathematics at the University of Washington.
There's a small workshop for it here: https://learnaifromscratch.github.io/calculus.html throwing in some youtube tutorials. The book presents everything as functions and their parameters, like linear functions, trig, sigmoidal, e and logarithms, you learn all the parameters to these functions and can type into desmos online graph to see what they're doing visually. You don't have to do the whole thing just use it for background material when an algorithm text uses calculus methods like L'Hopital's rule.
Poh-Shen Loh has a discrete math course open on his youtube channel https://www.youtube.com/c/DailyChallengewithPoShenLoh/search... you can use the book he recommends to look up anything that is assumed knowledge in lectures. Discrete Mathematics, by L. Lovász, J. Pelikán, and K. Vesztergombi. A book called Asymptopia by Spencer is well done too, good chapters for learning everything you want about big-O/omega/theta some topics are advanced and some anyone can do.
http://www.aduni.org/courses/discrete/index.php?view=cw
MIT Mathematics for Computer Science (harder but still not that hard):
http://ocw.mit.edu/courses/electrical-engineering-and-comput...
Steve Skienna discrete mathematics course (graduate course based on Knuth's "Concrete Mathematics", quite hard):
http://www3.cs.stonybrook.edu/~algorith/math-video/
I also recommend checking out some books:
http://infolab.stanford.edu/~ullman/focs.html - free "Foundations of Computer Science" book that combines discrete mathematics with C programming and some theory of computation stuff, a pretty good way to make things more practical
http://www.amazon.com/Discrete-Mathematics-Elementary-Beyond... - very pleasant introductory discrete mathematics book, a welcome break from the usual "brick" format and covers some important topics that often do not make it into the normal discrete mathematics curriculum e.g. induction on trees.
http://www.amazon.com/Introductory-Combinatorics-Modern-Birk... - classic introduction to combinatorics