Problem Detail: I just finished the AP Computer Science course in high school and since my school does not have any further classes, I was thinking about getting a textbook and continuing my study. APCS goes through Big O, Arrays + ArrayLists, Recursion, Linked Lists, a rough overview of some other data structures and some sorting and searching algorithms (all in Java). I will start Calculus in school next year (if that helps to determine math level). Since I was thinking about participating in CS tournaments, I thought it would be useful to learn more about algorithms and data structures. I was looking at two textbooks, The Algorithm Design Manual by Steven S Skiena and Introduction to Algorithms by Cormen et. al. I was wondering which one, if any of these, would best fit my situation.
Asked By : user20276
Answered By : D.W.
Personally, I recommend either Algorithms by Dasgupta, Papadimitriou, and Vazirani, or The Algorithm Design Manual by Skiena. The Algorithm Design Manual is super-practical and full of excellent pragmatic advice, useful stories, and is well-written and easy to read. If you want to help get ready for programming contests, I strongly recommend that one. I think Dasgupta has a better introduction from the perspective of learning the conceptual material, the theory, the proofs underneath the algorithms, etc. So, if you want to learn the theory, I recommend Dasgupta. You won’t go wrong with either; they are both outstanding. Personally, I think they are better than Cormen. I learned from Cormen, and it’s a perfectly fine book, but it can be a bit dense in places and a bit challenging to learn from, so it wouldn’t be my first recommendation. Still, it’s a reasonable contender and you wouldn’t be led astray by it; I just think the others are better.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/28582 Ask a Question Download Related Notes/Documents