Здравствуйте, гость ( Вход | Регистрация )
|
Iron Bug |
20.8.2010, 21:44
Сообщение
#1
|
|||
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
имхо, не надо тратить время на запоминание алгоритмов. они бывают очень хитрожопые, но пользы от их запоминания нет никакой. разве что ради развлечения на досуге (если таковой имеется). алгоритмы всегда можно найти, когда потребуется. это маленькие кирпичи, из которых строится программа. но они не играют роли, если общая концепция плохо продумана. так что то, что реально полезно в жизни - это паттерны(модели, схемы, принципы) проектирования ПО. по этой теме есть непревзойдённая книжка Эриха Гаммы и компании "Паттерны программирования" (или как-то так, я на английском читала, там она называется Design Patterns: Elements of Reusable Object-Oriented Software). Тут в книгах кто-то выкладывал русский перевод, но мне лично попадался очень распространённый и совершенно чудовищный перевод, полный ошибок, и я бы всё же рекомендовала её читать на английском, при возможности. эта книжка во многом ставит мозги на место и позволяет быстро решать довольно запутанные задачи в программировании. Цитата(igor_bogomolov @ 21.8.2010, 0:13) Link Только нет в стандарте алгоритмов на графах (алгоритма обхода графа, алгоритма нахождения кратчайшего пути ...), алгоритма поиска пары ближайших точек, определения выпуклой оболочки, поиска наибольшего общего делителя и т.д. Задач очень много и решений тоже. И нужно уметь анализировать эти решения, какое из них в твоей ситуации лучшее. это всё (ну, почти всё, что встречается на практике) и ещё куча всякой дребедени есть в бусте. Сообщение отредактировал ViGOur - 21.8.2010, 17:53 |
|||
|
|
||||
![]() |
|
Алексей1153 |
21.8.2010, 7:59
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
Цитата(Iron Bug @ 21.8.2010, 1:33) Link что касается именно алгоритмов - их нет смысла запоминать, так как всегда можно найти. а реализации современных алгоритмов в оптимизированном виде не добавляют логического мышления, только геморрой с разбиранием что и куда. даже я, с высшим математическим образованием, не всегда могу въехать в реализацию какого-нибудь сильно заоптимизированного алгоритма. а зачем городить свой огород, когда уже есть готовые отлаженные модули? вот я полностью так же думаю. Поэтому удивился, зачем на собеседовании спрашивать про знание алгоритмов. Лучше бы спросили, как решить вот такую вот задачу и дали интернет - ты находишь им вот такой алгоритм, вот так он описан - надо, решим |
|
|
|
|
BRE |
21.8.2010, 9:23
Сообщение
#3
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(Алексей1153 @ 21.8.2010, 8:59) Link вот я полностью так же думаю. Поэтому удивился, зачем на собеседовании спрашивать про знание алгоритмов. Лучше бы спросили, как решить вот такую вот задачу и дали интернет - ты находишь им вот такой алгоритм, вот так он описан - надо, решим А мы живем в Золотом веке? Все возможные/нужные алгоритмы уже придуманы и выложены в интернете? А если в интернете нет решения для этой задачи, она уникальна и решение нужно придумать самому. Почему, не попробовать разработать свой алгоритм, который будет эффективней существующих? А как это можно сделать, если как минимум не разобраться с + и - существующих решений? А как можно додуматься применить какой-то алгоритм в области, где до этого он никогда не применялся, не зная что он из себя представляет? А так я согласен, что где-то 98% программистов никогда в жизни не понадобиться ничего, кроме строк и пары контейнеров, для написания всех своих программ. Сообщение отредактировал BRE - 21.8.2010, 9:36 |
|
|
|
Iron Bug Нужны ли знания алгоритмов программисту 20.8.2010, 21:44
igor_bogomolov Речь не идет о конкретных языках программирования,... 20.8.2010, 22:15
Iron Bug Цитата(igor_bogomolov @ 21.8.2010, 1:15) ... 20.8.2010, 22:33
igor_bogomolov Цитата(Iron Bug @ 20.8.2010, 23:33) прост... 20.8.2010, 23:06
Iron Bug Цитата(igor_bogomolov @ 21.8.2010, 2:06) ... 20.8.2010, 23:40
Iron Bug Цитата(BRE @ 21.8.2010, 12:23) А мы живем... 21.8.2010, 11:33
BRE Если бы все думали так, мы бы по технологическому ... 21.8.2010, 12:22
Алексей1153 BRE, всё, что придумано - выложено. Отстальное - е... 21.8.2010, 12:34
BRE Цитата(Алексей1153 @ 21.8.2010, 13:34) Я ... 21.8.2010, 12:49
Алексей1153 Цитата(BRE @ 21.8.2010, 15:49) А как этим... 21.8.2010, 13:03
BRE Цитата(Алексей1153 @ 21.8.2010, 14:03) а ... 21.8.2010, 14:01
Алексей1153 Цитата(BRE @ 21.8.2010, 17:01) Лично я до... 21.8.2010, 14:17
Iron Bug кхм.. бога нет. но это мелочи.
а цивилизацию двига... 21.8.2010, 15:21
BRE Хорошо, пусть двигает экономическая выгода, страх,... 21.8.2010, 15:34
Алексей1153 Цитата(Iron Bug @ 21.8.2010, 18:21) бога ... 21.8.2010, 16:04
BRE Цитата(Алексей1153 @ 21.8.2010, 17:04) BR... 21.8.2010, 16:18
Алексей1153 Цитата(BRE @ 21.8.2010, 19:18) Брэм Коэно... 21.8.2010, 19:20
kwisp интересная у вас дискуссия.
никогда не против знан... 22.8.2010, 17:24
ufna на мое имхо, чем больше "классических" а... 23.8.2010, 11:10![]() ![]() |
|
Текстовая версия | Сейчас: 1.1.2026, 21:08 |