Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Forgive me if this seems trivial to you. But, I do need your advice.

I am self-studying computer programming, now want to study Algorithms and Data Structures. All respected texts in A&DS talk in mathematical terms. I have not studied mathematics at higher levels. So I find it difficult to follow.

Please suggest me books / resources wherein I can self-study the prerequisite mathematical knowledge.

Regards, Pranav

share|cite|improve this question

Not terribly much believe it or not. Algorithms and data structures is a very broad field. Obviously if you want to delve into some kinds of algorithms in particular, you need to know much more math. Generally though, for a good basic grasp of algorithms, you mostly need good problem solving abilities and a broad exposure (not necessarily too deep) to various kinds of mathematics. Number theory definitely is helpful as is some basic graph theory. If you really want to be able to analyze algorithms, you'll also need a fairly solid grasp of Big O notation.

This book is great for getting exposed to many various branches of math through problem solving:

Most algorithm books should at least gloss over Big O notation.

If you're interested in going deeper, you can use Knuth's Concrete Mathematics.

share|cite|improve this answer

Knuth's The Art of Computer Programming (TAOCP) is the essential series covering mathematics for programmers. The only prerequisite for reading the first book are, in Knuth's words:

the reader should have already written and tested at least, say, four programs

All other mathematical notation is described in detail as it is introduced.

Read and obey the Procedure for Reading This Set of Books in order not to get discouraged. Do some exercises. They are designed for self-study. As Knuth says:

It is difficult, if not impossible, for anyone to learn a subject purely by reading about it

share|cite|improve this answer
Four programs in assembly language is what he meant. I tried reading it before I had taken a course on assembly programming and understood very little. Even so, this book doesn't have many requisites in terms of knowledge but has massive requisites in terms of kskill and mathematical maturity. – user230452 Apr 19 at 17:13

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.