It has a very large number of answers in the back, but not all of them. You'll come out ahead even if you only do the problems with an answer as each section has anywhere between 30 to 60 problems. If you want to try every problem (or some of the interesting ones that don't have answers), there's an instructor's manual for 3rd edition. The one I linked is the 4th ed. No problem as the editions 3 and 4 mainly differ in numbering of their sections and chapters, so if you match a chapter from 4 ed to the one in the instructor's manual for 3rd ed, the answers are identical and in the same order. If none of this works for you, either just google the problem or visit MSE [1] as almost none of the problems in the undergrad books are original and many people before you have asked the same questions many times over.
Note, the price of the book is steep, but I am sure you know of libg3n.
[0]https://www.amazon.com/Discrete-Mathematics-Applications-Sus...
Some suggestions to get you started:
Book of Proof by Richard Hammack: https://www.people.vcu.edu/~rhammack/BookOfProof/
Discrete Math by Susanna Epp: https://www.amazon.com/Discrete-Mathematics-Applications-Sus...
Mathematical Proofs: A Transition to Advanced Mathematics by Chartrand et al: https://www.amazon.com/Mathematical-Proofs-Transition-Advanc...
How to Think About Analysis by Lara Alcock: https://www.amazon.com/Think-About-Analysis-Lara-Alcock/dp/0...
Learning to Reason: An Introduction to Logic, Sets, and Relations by Nancy Rodgers: https://www.amazon.com/Learning-Reason-Introduction-Logic-Re...
Mathematics: A Discrete Introduction by Edward Scheinerman: https://www.amazon.com/Mathematics-Discrete-Introduction-Edw...
The Real Analysis Lifesaver: All the Tools You Need to Understand Proofs by Rafi Grinberg: https://www.amazon.com/Real-Analysis-Lifesaver-Understand-Pr...
Linear Algebra: Step by Step by Kuldeep Singh: https://www.amazon.com/Linear-Algebra-Step-Kuldeep-Singh/dp/...
Abstract Algebra: A Student-Friendly Approach by the Dos Reis: https://www.amazon.com/Abstract-Algebra-Student-Friendly-Lau...
That's probably plenty for a start.
Lucky I saw this!!
I do have one reservation though -- many of our students come in with a weaker mathematical background than MIT students; for example we spent several weeks doing proofs by induction (and no other kinds of proofs) and this text doesn't seem to feature a couple of weeks worth of examples.
I think I'll probably go with this and supplement as needed. Really it looks quite wonderful. (And hell, the book seems to be open source which would mean that I could potentially write supplmentary material directly into the book and make my version available publicly as well.)
This thread seems like a particularly good place to solicit advice: experiences with this book or others, what you wished you'd learned in your own undergraduate course on this subject, etc. I've taught this course once before -- I feel I did quite well but I still have room to improve. Thanks!
[1] https://www.amazon.com/Discrete-Mathematics-Applications-Sus...
I cannot stress enough how important mathematical foundations is. It'll make everything else much easier to learn. I haven't read the book but heard good things about: https://www.amazon.com/Discrete-Mathematics-Applications-Sus... as a beginner text.
Coursera has multiple offerings on Data Structures / Algorithms -- find one that works best for you.
For instance:
https://www.coursera.org/learn/introduction-to-algorithms
https://www.coursera.org/specializations/algorithms
https://www.coursera.org/learn/algorithmic-thinking-1
https://www.coursera.org/learn/algorithmic-toolbox
By doing all of those you'll get a good introductory exposure to the topics.
You should also look at a rigorous course offering of Algorithms. MIT has a few online to view.
Some readings for a beginner are:
https://www.khanacademy.org/computing/computer-science/algor...
https://www.amazon.com/Algorithms-Unlocked-Press-Thomas-Corm...
https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press... (not beginner level but classic)
After all of this you should be fine with diving into interview books. You'll want to whiteboard solutions and be able to do all the difficult problems. Look into sites like leetcode, glassdoor and be able to do the difficult problems posted there.
[0] http://www.people.vcu.edu/~rhammack/BookOfProof/
[1] https://www.amazon.com/Discrete-Mathematics-Applications-Sus...
http://www.amazon.com/Discrete-Mathematics-Applications-Susa...
$264.39, for students that work part time jobs at $7.00 an hour (before taxes).
Not only students are angry about this. Professors are angry, and authors are angry too. Bitter fights between professors and publishers are common.
Everybody wants to see the big players in this industry fail. Please, someone, make it happen.
For more rudimentary papers, any undergrad course on discrete mathematics should get you started. I personally was forced to read http://www.amazon.com/Discrete-Mathematics-Applications-Susa... - and it's pretty decent.
One of the dirty little secrets of studying CS and math is that truly understanding 2 problems of the kind you've never seen before in 1 day is OK and expected. Hell, sometimes mere understanding of one single solution to a problem can take a week or longer. Most anyone who does better has either studied the (adjacent) material before or just trudging along half-understanding this bit and that piece hoping that sometime in the future it might all come together. And that's exactly what happens after you stick with it for awhile (often several years). Your job is to understand the thought process and philosophy of math. It's usually called "math maturity". Math/CS people reuse the same tips and tricks over and over again under many different guises and after a while you'll start seeing this repetition and even start using them yourself. It's very similar to how you learned your own native tongue. Luckily, math folk have methods to rein in this madness.
Check out [0]. It's free and teaches you some basics of structured thought. Then check out [1], [2], [3] to expand on what you've learned.
One really good unpretentious algo book that shows you how to do problems is [4].
[0] BOOK OF PROOF by Richard Hammach
https://www.people.vcu.edu/~rhammack/BookOfProof/
[1] Discrete Mathematics with Applications by Susanna Epp
https://www.amazon.com/Discrete-Mathematics-Applications-Sus...
[2] Pure Mathematics for Beginners by Steve Warner
https://www.amazon.com/Pure-Mathematics-Beginners-Rigorous-I...
[3] Mathematical Proofs by Gary Chartrand et al
https://www.amazon.com/Mathematical-Proofs-Transition-Advanc...
[4] Data Structures and Algorithms: Concepts, Techniques and Applications by G.A.V. Pai
https://www.amazon.com/gp/product/0070699577/ref=ppx_yo_dt_b...
Good Luck and don't f*ck it up!