T
T
tolka19912015-04-28 23:27:30
Algorithms
tolka1991, 2015-04-28 23:27:30

How to learn algorithmic thinking?

hello, when solving problems, problems arise, like the syntax of the language I know, but sometimes I don’t know what and how to write so that all this is done. how to develop such a skill? what literature do you recommend?

Answer the question

In order to leave comments, you need to log in

9 answer(s)
M
Maxim Kuznetsov, 2015-04-29
@max-kuznetsov

Bjorn Stroustrup, describing C++, said: "A programming language serves two related purposes: it is a programmer's expressive means for specifying actions to be performed, and it is also a set of concepts that a programmer uses when solving a problem." But a programming language is definitely not a solution to a problem, it is only a means of expression and a tool. So for starters, let's leave programming aside.
The rest is simple. A programmer often lacks some "prelude" to bridge the gap between the idea of ​​a program and the writing of code. This bridge is built like this:
It looks complicated. But not very difficult.
How I look at this whole process, you can see here: An overview of the software development process . A brief academic overview of the whole process can be found in McConnell's book, "Staying Alive. A Guide for Software Project Managers" - a small book to start with.

A
Artem Kiryanov, 2015-04-28
@hacker342

And I do it differently, if I need to solve a certain problem, I write it on an A4 sheet and begin to disassemble it. For some, like me, visual-algorithmic memory does not work, so my friend is a piece of paper and a pen. Ah, algorithms. Yes, take a book on algorithms, yes read it. In any case, a thing useful in life. Algorithms are everywhere, even your smartphone is full of algorithms. Hold on, but don't bite. It must be liked. You don't need to learn anything. You hammer in your head that you won’t be able to solve the problem, but you write it down and everything will become clear right away.

A
Alexander Semykin, 2015-04-29
@vagrantnotes

Algorithmic Thinking course starts on Coursera in a month , which is dedicated to this topic. Perhaps it will be useful.

M
Marina, 2015-04-29
@MJee

You can take books from the category "Problems for programmers", for example www.ozon.ru/context/detail/id/29561974
Despite the title, this book contains a lot of very good problems specifically for algorithms. Try to decide for yourself, then compare with the answers.

V
Vladimir Martyanov, 2015-04-28
@vilgeforce

You need to start by memorizing the definition of the algorithm. Then you have to master the division of the task into parts. Then there will be no questions.

A
Alexander Kondaurov, 2015-04-28
@kondaurov

and how to write so that all this is done

This is the answer to the question. You do not see the goal and naturally no algorithm will come to mind.
There is a goal: You need to make coffee. I want coffee.
Given: Coffee maker, coffee grinder, coffee beans.
Algorithm: Make up your own...

I
iv_k, 2015-04-29
@iv_k

Take a task and write how it goes. Then think, erase everything nafig, and write in the normal way. And so several times. Other people's experience is of little help here.

V
Vadim Shandrinov, 2015-04-29
@suguby

Great question. Everyone should think so.
I would recommend the book "Algorithms: construction and analysis" but it is sooo boring and mathematical. If you read (and understand!) at least the first chapter +100 to the "Smart" skill :)

A
Alexander Kulinich, 2015-04-29
@AKulinich

Read Koromen "Algorithms. Construction and analysis" and solve problems on codeforces

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question