Нужно ли разработчикам знать алгоритмы?

Писал я тут пост про расстояние Левенштейна, задумался об алгоритмах, и меня немножко понесло. Решил вынести в отдельный пост, чтобы не забивать тот пост оффтопом, который вряд ли будет интересен широкой аудитории.

<a href="https://api.dtf.ru/v2.8/redirect?to=https%3A%2F%2Fppt-online.org%2F21901&postId=123264" rel="nofollow noreferrer noopener" target="_blank">Какая-то презентация из интернета. Возможно, чей-то курсач</a>
99

не нужно знать алгоритмы наизусть, но нужно знать, что они есть и какие у них границы применимости.Я бы сказал по другому: программисту нужно знать основы алгоритмизации чтобы до написания кода и применения конкретных инструментов пошагово представлять как оно должно работать в итоге.

2
Ответить

Это безусловно, понимание алгоритмов нужно. Но вот нужно ли учить существующие алгоритмы просто так? Нужно ли читать Кормена или Кнута (все 4 тома), чтобы знать как устроена быстрая сортировка, поиск остова графа или разворот связного списка?
С одной стороны, надо бы знать хотя бы основы, чтобы не изобретать велосипеды.
С другой - если на собеседовании спрашивают про алгоритм быстрой сортировки, я бы задал встречный вопрос - зачем им это нужно и как часто они пишут собственные реализации алгоритмов.

2
Ответить