Алгоритмы и структуры данных
От: Rothmans  
Дата: 06.07.10 20:03
Оценка:
Привет всем,

Готовлюсь к собеседованию.
Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".

Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?
Re: Алгоритмы и структуры данных
От: Сергей Мухин Россия  
Дата: 06.07.10 20:30
Оценка: 3 (3) :))) :)))
Здравствуйте, Rothmans, Вы писали:

R>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".


R>Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?


только один
кто автор книги "Алгоритмы и структуры данных"?
---
С уважением,
Сергей Мухин
Re: Алгоритмы и структуры данных
От: andy1618 Россия  
Дата: 06.07.10 20:36
Оценка: 1 (1)
Здравствуйте, Rothmans, Вы писали:

R>Готовлюсь к собеседованию.

R>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".

На сайте ИНТУИТа есть видеокурсы:
"Программирование и знакомство с алгоритмами":
http://www.intuit.ru/department/algorithms/introprogalgo/
и
"Базовые алгоритмы для школьников":
http://www.intuit.ru/department/algorithms/basicalgos/

Там, правда, уклон на олимпиадное программирование, но, как минимум,
прочитать все умные слова в оглавлении курса будет нелишним
Re[2]: Алгоритмы и структуры данных
От: Rothmans  
Дата: 06.07.10 20:54
Оценка:
Здравствуйте, Сергей Мухин, Вы писали:

СМ>Здравствуйте, Rothmans, Вы писали:


R>>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".


R>>Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?


СМ>только один

СМ>кто автор книги "Алгоритмы и структуры данных"?

Так вот какую книгу написал Вирт! А то наш профессор в былые времена все Вирт, Вирт, Кнут да Пряник
Re[3]: Алгоритмы и структуры данных
От: Сергей Мухин Россия  
Дата: 06.07.10 21:15
Оценка:
Здравствуйте, Rothmans, Вы писали:

R>Так вот какую книгу написал Вирт! А то наш профессор в былые времена все Вирт, Вирт, Кнут да Пряник


про Пряник я уже и не помню
---
С уважением,
Сергей Мухин
Re: Алгоритмы и структуры данных
От: okman Беларусь https://searchinform.ru/
Дата: 07.07.10 06:54
Оценка: 2 (2)
Здравствуйте, Rothmans, Вы писали:

R>Привет всем,


R>Готовлюсь к собеседованию.

R>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".

R>Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?


Лично я бы спросил, какие алгоритмы структуры данных свободно используются им в работе.
Это гораздо важнее, чем слепое штудирование Кнута, Седжвика и Дейкстры.
Впрочем, у работодателей обычно свое мнение на этот счет.
Re: Алгоритмы и структуры данных
От: TheBeard Россия  
Дата: 07.07.10 08:37
Оценка: 6 (2)
Здравствуйте, Rothmans, Вы писали:

R>Готовлюсь к собеседованию.

R>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".

R>Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?


Програмист обычно пишет на каком-то языке и собеседуют его на соответствующую позицию. Программиста C++ я бы поспрашивал про контейнеры и алгоритмы STL:


Ну и что-нибудь специфичное для предметной области компании: алгоритмы на графах, поиск в тексте, формальные грамматики, B-деревья, геометрические алгоритмы.
Re[2]: Алгоритмы и структуры данных
От: slava_phirsov Россия  
Дата: 07.07.10 10:38
Оценка: 1 (1) :))
Здравствуйте, TheBeard, Вы писали:

TB>Програмист обычно пишет на каком-то языке и собеседуют его на соответствующую позицию. Программиста C++ я бы поспрашивал про контейнеры и алгоритмы STL:




Согласен, обычный джентельменский набор вопросов, практически, как вопросы о барометре и "чисто конкретном классе". Слышал много раз, и каждый раз на чем-нибудь сыпался

ОФФТОП, специально для работодателей
ИМХО, практическая ценность таких вопросов для компании-работодателя близка к нулю. Лучший знаток алгоритмов, которого я знал, в практической работе был абсолютно неудобоварим. Например, создает экземпляр потомка QThread (Qt), и считает, что от этого у него приложение автоматически стало многопоточным. Ну да, стало, только созданный им поток ничего полезного не делает. Или как вам преждевременная (т.е. без минимального обоснования) борьба за производительность путем полного отказа от использования библиотечных контейнеров и ваяния велосипеда в виде кольцевого буфера? А в алгоритмах — в алгоритмах, да, дядька был дока, и всего Кнута чуть ли не наизусть знал, и на какой-нибудь "алгоритмической сложности вставки в дерево Адельсона-Вельского-Ландиса" его было бы не поймать.
КОНЕЦ ОФФТОПА
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)
Re[3]: Алгоритмы и структуры данных
От: TheBeard Россия  
Дата: 07.07.10 13:01
Оценка:
Здравствуйте, slava_phirsov, Вы писали:

_>ИМХО, практическая ценность таких вопросов для компании-работодателя близка к нулю. Лучший знаток алгоритмов, которого я знал, в практической работе был абсолютно неудобоварим.


Это не совсем так. Такие вопросы отсеивают алгоритмически неграмотных соискателей. Описанного вами человека скорее всего отсеяли бы на разборе проблемного кода или просто по общей неадекватности поведения (безумный огонь в глазах и т.п.).
Re[3]: Алгоритмы и структуры данных
От: Pavel Dvorkin Россия  
Дата: 07.07.10 13:08
Оценка:
Здравствуйте, slava_phirsov, Вы писали:

ОФФТОП, специально для программистов

>и на какой-нибудь "алгоритмической сложности вставки в дерево Адельсона-Вельского-Ландиса" его было бы не поймать.


Если уж знание алгоритмической сложности операций в дереве Адельсона-Вельского-Ландиса (кстати, это два человека, Адельсон-Вельский и Ландис, а не три) может быть представлено как нечто выдающеееся, особенное, то, что другие не знают, то это означает только одно — уровень большинства програмистов в плане алгоритмов снизился до уровня детского сада.

_>КОНЕЦ ОФФТОПА
With best regards
Pavel Dvorkin
Re[4]: Алгоритмы и структуры данных
От: slava_phirsov Россия  
Дата: 07.07.10 13:20
Оценка:
Здравствуйте, TheBeard, Вы писали:

TB>Это не совсем так. Такие вопросы отсеивают алгоритмически неграмотных соискателей.

Хм, если почитать K&R, как они реализовали управление памятью... Где-то здесь на RSDN-е пробегала статья некоего Ньюкамера, который их за это прикладывал очень и очень крепко. ИМХО, все более-менее сложные алгоритмы, которые можно анализировать "в условиях сферического вакуума", уже изобретены и реализованы. Какой смысл, к примеру, обсуждать различные алгоритмы сортировки, если все равно в 99.9% случаев будет использоваться std::sort?

TB>Описанного вами человека скорее всего отсеяли бы на разборе проблемного кода или просто по общей неадекватности поведения (безумный огонь в глазах и т.п.).


Да нет, этого, кстати, за ним не замечалось. Скорее уж неуравновешенным (да еще каким!) становился я, когда мне предлагалось вместо QList использовать кольцевой буфер.

А, шастая по собеседованиям, я практически ни разу не видел разбор реального проблемного кода. Все больше надуманные примеры "в сферическом вакууме". Даже мои образцы кода, которые я, бывало, посылал с резюме, не только не разбирали, но, похоже, даже и не читали. Видимо, в тех конторах, где их читали, сразу говорили "no hire!"
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)
Re[4]: Алгоритмы и структуры данных
От: slava_phirsov Россия  
Дата: 07.07.10 13:35
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Если уж знание алгоритмической сложности операций в дереве Адельсона-Вельского-Ландиса (кстати, это два человека, Адельсон-Вельский и Ландис, а не три) может быть представлено как нечто выдающеееся, особенное, то, что другие не знают, то это означает только одно — уровень большинства програмистов в плане алгоритмов снизился до уровня детского сада.


Ну, во-первых, я и не говорил, что это три разных человека. Просто написал их через черточку. Во-вторых... Во-вторых, см. мой первоначальный пост: человек хорошо разбирался в том, что непосредственно не входило в его задачи (никто его не просил реализовывать какие бы то ни было деревья), и при этом не мог грамотно решать те задачи, которые ему поручались. Скажу откровеннее: он даже неграмотно их не мог решать. Таких теоретиков я встречал не одного, и даже не двух. С другой стороны, встречал и чистых прикладников, которые не читали, что там написал Кнут в третьем абзаце сто двадцатой страницы второго тома, зато разбирались в конкретных проблемах, конкретных фреймворках, с которыми работали, и успешно и грамотно решали поставленные задачи. Хорошо, конечно, и ядерную физику знать, и на токарном станке уметь работать, "и еще и на машинке" ((с) Матроскин). Но, увы, не каждому дано быть Леонардо. Пока что Леонардо от программирования я не встречал.
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)
Re[3]: Алгоритмы и структуры данных
От: andy1618 Россия  
Дата: 07.07.10 16:29
Оценка:
Здравствуйте, slava_phirsov, Вы писали:

_>ИМХО, практическая ценность таких вопросов для компании-работодателя близка к нулю.

_>Лучший знаток алгоритмов, которого я знал, в практической работе был абсолютно неудобоварим. Например, ...

Не стоит обобщать, компании и "практические работы" разные бывают.
Где-то вашего "неудобоваримого" дядьку оторвали бы с руками, посадив его лабать свехрбыстрые очереди и АВЛ-деревья
Ну а если в вашей компании такие знания не требуются, то да, особого смысла задавать такие вопросы нет.
Re: Алгоритмы и структуры данных
От: Аноним  
Дата: 07.07.10 16:37
Оценка: 1 (1)
Здравствуйте, Rothmans, Вы писали:

R>Привет всем,


R>Готовлюсь к собеседованию.

R>Темами для оного в том числе являются "Алгоритмы" и "Структуры данных".

R>Какие бы вы задали вопросы поступающему профессиональному программисту на эти темы?


какие вы знаете виды сортировки?
какая сложность quicksort для типового и худшего случаев?
как устроен heap sort?
...

в общем, по главам CLR(S)
Re[2]: Алгоритмы и структуры данных
От: andy1618 Россия  
Дата: 07.07.10 17:12
Оценка: 2 (1)
Здравствуйте, TheBeard, Вы писали:

TB>Програмист обычно пишет на каком-то языке и собеседуют его на соответствующую позицию. Программиста C++ я бы поспрашивал про контейнеры и алгоритмы STL:


TB>
TB>Ну и что-нибудь специфичное для предметной области компании: алгоритмы на графах, поиск в тексте, формальные грамматики, B-деревья, геометрические алгоритмы.

Годный списочек! Для C# можно спросить про:


Что касается базовых алгоритмов, то их удобнее/полезнее обсуждать не в чистом виде,
а в контексте вышеуказанных контейнеров (сложность добавления/вставки/удаления/поиска/сортировки, хеширование).

Ну и, безусловно, успешный кандидат вовсе не обязан знать всё без исключения.
Например, если на вопрос "Какова сложность поиска элемента в HashSet?",
кандидат ответил бы "Навскидку не скажу, но это узнаётся из хелпа за 30 секунд",
то такой ответ лично меня бы вполне устроил
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.