
Many books of this kind are usually called "Intro To Discrete Math" because I think discrete math is easier and neater than its continuous counterpart. Most such books consider a sampling of topics from number theory, combinatorics, graph theory and discrete probability. Obviously, they do not even scratch the surface of the subjects they teach as that's not the goal. For example, compare what's in the counting section of a typical intro to discrete math book to an intro to counting proper. For example, my very first discrete math textbook was "Discrete Mathematics with Applications" by Susanna Epp and for counting it was "Combinatorics: A Guided Tour" by David R Mazur. Epp's books covers much, much, much less. Similarly, currently one of the very best intros to elementary number theory is "Number Theory: Step By Step" by Kuldeep Singh. The latter also contains much more material than a typical intro to discrete math.
Beyond that every author of an into to discrete math likes to include a little taste of their own personal favorites. For example, Susanna Epp has a chapter on algorithm analysis whereas, say, Edward Scheinerman talks a little bit about group theory in his book "Mathematics: A Discrete Introduction". Yet other authors include chapters on geometry, vectors spaces, generating functions etc.
I noticed (almost) every math/CS adjacent thread on HN gets mention of Big O notation. IMO, the best place to learn that is a textbook on discrete math. For example, Susanna Epp has a whole chapter dedicated to this topic in her intro to discrete math book. Consider [0] from Epp's book. Since it's a math book it's very careful and thorough meaning if you don't understand something in that example reading the material that precedes will clarify everything; just a matter of backtracking far enough. Since it's an extremely introductory book, it's also very patient. I personally struggled with the motivation for defining total derivative through little-o notation.
There are a ton more textbooks on discrete math like, say, " Essential Discrete Mathematics for Computer Science" by Lewis & Zax or "Discrete Mathematics: An Open Introduction" by Oscar Levin.
Some intro books also attempt to include a tiny bit of real analysis and general topology. Topics include ways of using least upper bound, epsilon-delta arguments, open/closed sets, a little on metric spaces etc. Obviously, such books don't get carried away by ditching epsilon-delta/balls arguments in favor of more general open sets to define continuity, for example. One such book that comes to mind is "Mathematical Proofs: A Transition to Advanced Mathematics" by Chartrand, Polimeni, Zhang.
I think the best book in this introductory genre is "Book Of Proof" by Richard Hammack. It's freely available. I see the latest edition added a few techniques for proving convergence and continuity on the real line: epsilon-delta and epsilon-N stuff.
I call the books mentioned above "Intro To Math 1". After these books one can get started with more in depth books on the subjects considered in the aforementioned books or pick up an intro to real analysis, topology, abstract algebra, whatever.
One of the most effective textbooks on elementary math analysis is "Principles of Mathematical Analysis" by Rudin. But one will have a real tough time with it even after studying the aforementioned books. But there are fantastic preparatory books like "Linear Algebra: Step by Step" by Kuldeep Singh which one needs because Rudin considers Euclidean Spaces proper, not just the reals. Other helpful books include "Yet Another Introduction to Analysis" by Bryant, "How to Think About Analysis" by Lara Alcock, "A First Course in Mathematical Analysis" by Brannan, "Real Analysis: A Long-Form Mathematics Textbook by Jay Cummings" etc. None of these books are perfect. For example, none of them (but that of Cummings) include the necessary topological concepts. Also, even though the book by Bryant is chatty, his exercises can be tough. Case in point, he expects you to prove that rationals are incomplete in the very first chapter. To his credit, he gives a lot of hints and every one of his exercises have detailed solutions. When I first saw Alcock's book I got the impression that her book was an excuse to explain how we think about the convergence in reals. The rest of the book felt like a filler, even though the book is worth it for that chapter alone. It's good to look into many different books because the authors make different choices. For example, Cummings proves Bolzano-Weierstrass theorem through the fact that every sequence has a monotone subsequence whereas Brannan does it by way of bisection argument. Other authors might make yet other choices. In math the more techniques you have in your tool chest, the easier it is to attack problems. If you solve a problem one way, but the solution given is different it's worth memorizing the alternative solution as it's another technique that will come in handy in a different situation.
Ok, I didn't say anything about abstract algebra and other subjects, but this post is already turning into a novel.
After making very first and wobbly steps into math through the intro to discrete math books, the other path is to study what I call "Intro To Math 2". There are books like "Mathematical Concepts" by Jost or (especially) "Essential Mathematics for Undergraduates" by Giossi. Wanted to say more about this or the other topics above. Maybe next time.
Please, excuse the grammar and inconsistent notation (& naming convention) as it is very late here.
Another analysis suggestion is Creative Mathematics by H.S. Wall. It is a book that walks a high school level student through creating the proofs themselves. The topic covered is a stripped down version of analysis, calculus, and later even differential geometry. It's really brilliant. Going slow and having fun when you're a teen would be much more productive than going fast and burning out.
The Spivak book is a good suggestion and might be a little difficult depending on their actual background. The books by Gelfand mentioned by someone else (there's actually a series of them that cover algebra, functions, coordinates, trigonometry, etc.) would help provide the needed background.
The book Conceptual Mathematics is claimed to be aimed at high school students. Maybe give it a whirl and see what happens. If they know calculus, then Advanced Calculus: A Differential Forms Approach by Harold Edwards is a gem. The first three chapters should be readable, as they give heuristic discussions of the topic.
Up to high-school level:
1. Precalculus: Precalculus: A Prelude to Calculus - Axler
2. Calculus: The Calculus Tutoring Book - Ash.
College:
3. Preparation for Collegel-level maths:
3a. General prep for high level maths: How to Study as a Mathematics Major - Alcock
3b. Proof writing: How to Prove It - A Structured Approach - Velleman OR Book of Proof (2nd ed) - Hammack (it's free!)
4. Mathematical Analysis:
4a. Good prep for Analysis: How to Think About Analysis - Alcock
4b. Understanding Analysis (2nd ed) - Abbott OR Yet Another Introduction to Analysis - Bryant (has full solutions) OR The How and Why of One Variable Calculus - Sasane OR Mathematical Analysis - A Straightforward Approach (2nd ed) - Binmore (has full solutions)
5. Discrete Mathematics (a combination of set theory, combinatorics, a bit of discrete probability and graph theory): Discrete Mathematics - Chetwynd, Diggle
6. Linear Algebra: Linear Algebra - A Modern Introduction (4th ed) - Poole
7. Probability: Introduction to Probability - Blitzstein, Hwang + online course https://projects.iq.harvard.edu/stat110
8. Statistics: (for Bayesian) Statistical Rethinking - A Bayesian Course with Examples in R and Stan - McElreath + online course https://www.youtube.com/playlist?list=PLDcUM9US4XdM9_N6XUUFr...
Usually you'll be doing courses on #4, #5, and #6 simultaneously.