Здравствуйте, Vzhyk, Вы писали:
>> Речь >> идет о школьном алгоритме — равибваем ось x на отрезки, считает в каждом >> отрезке значение ф-ции и суммируем. Все, никакого матана, школа, 9-й класс. V>Вот я тебе и написал посему про бессмысленность данного вопроса. V>Он выясняет только помнишь ли ты так-называемый метод "прямоугольников" V>(кстати, у тебя какие левые правые, средние).
Это не суть важно. В переделе то же самое будет.
V>Т.е. этот вопрос даже для затравки не годится. Можно было бы выложить V>тебе формулу (типа той по ссылке) и спросить как бы ты стал ее считать, V>ну а дальше уже по выяснять, что ты знаешь.
Зачем им это делать, если им это не нужно?
Re[10]: Задача на собеседовании - обращение списка.
Здравствуйте, Mr.Cat, Вы писали:
MC>А при чем здесь системные знания? Допустим, я иду на собеседование, допустим, на джава-разработчика. То, что имеет в джаве конкретное значение (списки, ссылки и т.п.) я в этом значении и понимаю. Какое мне дело до чьих-то системных знаний?
Ну вам может быть и никакого, а моя практика показала, что люди, не знающие базовых вещей, вместо простых и эффективных решений пишут глючный быдлокод, на переделывание которого потом надо тратить время и деньги.
Re[4]: Задача на собеседовании - обращение списка.
Здравствуйте, Mr.Cat, Вы писали:
MC>Ну это очень пространное определение. Если не брать в расчет опечатки и знание деталей редкоиспользуемого API, то у любой задачи, например, бывают граничные случаи, которые не позволяют ее решить за пять минут. Квиксорт, например, из таких.
Да, и если человек не может увидеть и обработать все граничные случаи в алгоритме обращения списка, что он тогда будет делать в раельных задачах, где граничных случаем на несколько порядков больше? try-catch везде лепить? Знаем, видели таких, идиотов дешевле не брать, чем потом увольнять.
Re[2]: Задача на собеседовании - обращение списка.
Здравствуйте, B0FEE664, Вы писали:
BFE>Здравствуйте, Паблик Морозов, Вы писали:
ПМ>>2. Если сраз нафиг, то как грамотно построить интервью, чтобы дать эту задачу в самом начале, не слишком сильно человека шокировав, и распрощаться втечение пяти минут, не слишком обидев?
BFE>А вы можете её сами написать за 5 минут? Я вот по часам засекал, за 12 минут вот такой результат: BFE>Опыт программирования больше 10 лет.
Я бы задумался. Человек 10 лет программирует, а все не научился стандарные библиотеки использовать
40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".
На мой взгляд — плохо
Re[7]: Задача на собеседовании - обращение списка.
G>>Потому что это сложные алгоритмы, как и разворот списка на месте. Правильная их реализация не совпадает с наивной. Оптимизированная быстрая сортировка — тоже. ПМ>какая еще может быть "наивная" реализация разворота списка?
list = x::list | nil
reverse nil = nil
reverse x::xs = (reverse xs)::[x]
G>>Есть смысл давать что-то что ближе к реальной задаче ПМ>А ближе/дальше как мерить интересно? Если полностью убрать предметную область, то и останутся задачи на алгоритмы над структурами данных.
Угу, вот только разворота линейного списка на месте среди них нет, потому что связные списки редко используются в чистом виде. Чаще всякие stl и другие контейнеры.
G>>Еще раз повторю что разворот списка не пишут. Ты наверное и сам его в production не писал ни разу. ПМ>Еще раз повторю, что даётся наиболее примитивная задача, показывающая, сможет ли человек написать простейший алгоритм. В продакшене я писал гораздо более сложные алгоритмы, но над ними надо думать часами.
Ничего она не показывает, не надо тешить свое самолюбие. Вот ты например не напишешь выборку N случайных чисел массива не заглядывая в гугл за 5 минут. О чем это говрит? А ни о чем
G>>Больших как ни странно. ПМ>каких именно?
А вот каких знаний требует задача выбора N случайных элементов массива?
G>>Это например тех кто не гуглил перед собеседованием вопросы и не умеет соображать быстро в стрессовой ситуации. Среди них кстати могут быть и очень хорошие специалисты. ПМ>Поэтому я и даю сеньёр-девелоперам задачу, которую по идее может решить любой школьник.
К чему тут "поэтому"?
Ты пытаешься приуменьшить сложность задачи, которую сам знаешь. Яж говорю — напиши за 5 минут без гугла выборку N случайных чисел из массива. По сложности задача примерно такая же, как разворот списка.
Re[12]: Задача на собеседовании - обращение списка.
Здравствуйте, Lloyd, Вы писали:
L>Здравствуйте, gandjustas, Вы писали:
L>>>IEnumerable — это итератор, а не список. Список — это List.
G>>Смотри что Кнут пишет про список.
L>Ага. Бросился перечитывать все 4 тома. Цитату приведи.
Ага, бросился перепечатывать бумажную книгу.
G>>>>Рекурсия для списков, а не для строк C#. L>>>Ну так объясни, причем тут рекурсия. Все равно непонятно. G>>Для списков чтоли?
L>Даю тебе три попытки дагадаться. Тольк не смотри название темы и предыдущие сообшения в ветке.
А то что все списки — рекурсивные структуры и все алгоритмы с ними рекурсивны по своей природе. Сам не догадался?
Это должно быть еще более очевидно, чем реализация этих алгоритмов.
Re[10]: Задача на собеседовании - обращение списка.
Здравствуйте, UA, Вы писали:
UA>Почему начали спрашивать со списков? Доставайте тогда букварь из под стола и просите повторить человека алфавит для начала. Результат будет тот же.
Вывод о том, что человек знает большинство букв и умеет составлять из них осмысленные слова, я делаю на основе прочтения резюме. вывод о том, что человек знает некоторые операции языка программирования и умеет составлять из них осмысленные алгоритмы я делаю, попросив написать парочку.
Re[3]: Задача на собеседовании - обращение списка.
Здравствуйте, Handie, Вы писали:
H>Я бы задумался. Человек 10 лет программирует, а все не научился стандарные библиотеки использовать
H>std::list<int> list; H>... H>std::reverse(list.begin(), list.end())
H>40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".
надо подтверждать статус профессионала, а так же, за что платить от 150 килорублей в месяц
Re[8]: Задача на собеседовании - обращение списка.
Здравствуйте, Vzhyk, Вы писали:
V>В общем мы поняли, что не подходим друг другу. Чтобы сэкономить твое и V>свое время было бы хорошо, чтобы ты озвучил контору, куда мне не следует V>слать резюме.
Как я уже (3 раза) написал, мы не выставляем на публичных сайтах вакансии программистов с компенсацией 500 т.р. в месяц. Т.е. ты претендуешь именно на такую з.п. и потрудишься прочитать информацию о вакансии, у тебя и так не будет причин слать резюме. Если ты такую вакансию на публичном сайте найдёшь — можешь смело слать — она не наша.
Re[13]: Задача на собеседовании - обращение списка.
Здравствуйте, gandjustas, Вы писали:
L>>Даю тебе три попытки дагадаться. Тольк не смотри название темы и предыдущие сообшения в ветке. G>А то что все списки — рекурсивные структуры и все алгоритмы с ними рекурсивны по своей природе. Сам не догадался? G>Это должно быть еще более очевидно, чем реализация этих алгоритмов.
Ты можешь ответить на простой вопрос "зачем для разворота списка нужна рекурсия"?
Не нужно уходить в высокии материи и пытаться на основе того, что список пожет быть реализован как рекурсивная структура данных, делать вывод, что это неотъемлемое свойство списка.
Re[8]: Задача на собеседовании - обращение списка.
Здравствуйте, alzt, Вы писали:
A>Отсеивать надо, если ты считаешь, что приобрести такой навык сложно. Если человека можно научить за пару часов решать подобные задачи — то стоит ли отсеивать людей по этому критерию?
Навык писать нормальный рабочий код приобрести сложно.
Re[2]: Задача на собеседовании - обращение списка.
H>>40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".
о_О>надо подтверждать статус профессионала, а так же, за что платить от 150 килорублей в месяц
Здравствуйте, Паблик Морозов, Вы писали: ПМ>что он тогда будет делать в раельных задачах, где граничных случаем на несколько порядков больше?
Напишет тесты, очевидно же. Не все любят компилировать в уме и учить википедию наизусть.
Re[6]: Задача на собеседовании - обращение списка.
Вообще, имхо, задача собеседования — определить адекватность кандидата и способность мыслить. Остальное обычно проистекает из желания показать собственное превосходство.
Re[14]: Задача на собеседовании - обращение списка.
24.02.2012 16:07, Lloyd пишет:
> Это не суть важно. В переделе то же самое будет.
Вот и пролетел ты со школьными своими знаниями — это важно. Можешь на
вики посмотреть, можешь пару учебников качнуть.
А вот то, что важно — это бессмысленность данного вопроса.
> Зачем им это делать, если им это не нужно?
Тут я тебя уже не понял. Кому им и что не нужно?
Posted via RSDN NNTP Server 2.1 beta
Re[8]: Задача на собеседовании - обращение списка.
Здравствуйте, Vzhyk, Вы писали:
V>24.02.2012 15:38, Паблик Морозов пишет:
>> кандидатов на публичных сайтах вакансий не ищем. V>В общем мы поняли, что не подходим друг другу. Чтобы сэкономить твое и V>свое время было бы хорошо, чтобы ты озвучил контору, куда мне не следует V>слать резюме.
Могу дать ответ на этот вопрос
Компания BrightConsult.