Answer the question
In order to leave comments, you need to log in
When to start learning algorithms and data structures?
When exactly should I start getting acquainted with algorithms and data structures? The topic is interesting to me, but it is not as simple as I would like. I tried to study algorithms from Princeton, but after 150 pages of naked theory, I saw the practical part, i.e. what the implementation of this or that algorithm in a particular language looks like, and I realized that I still don’t know such subtleties of the language. The same is true with design patterns. The preview
says that the reader must be advanced in the language in order to understand what we are talking about here we are talking.
Even in the Khan Academy, such a primitive as binary search, linear search are implemented in JS, but in order to understand everything, you need a good understanding. Give me advice on when and how to start these goodies? I downloaded very cool literature, and I can’t wait already start to figure it all out.
Answer the question
In order to leave comments, you need to log in
Give advice on when and how to start these delicious treats?When you have relevant tasks. For example, as you have already been recommended, "Olympiad". (I recommend codeeval and codewars ). You can first solve the problem in some "naive" way, then search (ask) for a suitable data structure, compare the performance of the approaches. In my opinion, binding to some kind of practice allows knowledge to be better absorbed.
You can read any book you like, without being particularly distracted by the analysis of the nuances of the implementation of a programming language. Thus, you will have a primitive sketch of the whole picture. After a while, you can re-read the same book and you will find many new points for yourself that you missed before. And the picture in your head will get clearer outlines.
I liked the book "Algorithms in Java" by Robert Sedgwick, Kevin Wayne, 4th edition. From the author there is also a course on the course. A deep understanding of java is not required, after each chapter there are many tasks for self-control.
hmm, just the main books on algorithms in a pseudo programming language, without being tied to any language, something similar to Pascal for example.
I will not advise Knuth with his low-level language,
there is "Algorithms" here - Dasgupta S., Papadimitriou H., Vazirani U. codeforces.com/blog/entry/12314
excellent book for beginners.
If a topic interests you, isn't that a reason to study it right now? Let a lot of incomprehensible. If there is a will, there will be a way.
150 pages of naked theory? meaning? remember how you studied at school - 2-10 pages of theory + problems on the topic you read, and so on in such a cycle. and of course after each chapter check + difficult tasks. how to study the exact sciences
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question