Re[9]: Задача на собеседовании - обращение списка.
От: Vzhyk  
Дата: 24.02.12 13:06
Оценка:
24.02.2012 15:51, Lloyd пишет:

> Полный список компаний можно посмотреть на сайте hh.ru

Причем тут хаха.ру, когда речь идет об одной конкретной.
Posted via RSDN NNTP Server 2.1 beta
Re[13]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 24.02.12 13:07
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> Речь

>> идет о школьном алгоритме — равибваем ось x на отрезки, считает в каждом
>> отрезке значение ф-ции и суммируем. Все, никакого матана, школа, 9-й класс.
V>Вот я тебе и написал посему про бессмысленность данного вопроса.
V>Он выясняет только помнишь ли ты так-называемый метод "прямоугольников"
V>(кстати, у тебя какие левые правые, средние).

Это не суть важно. В переделе то же самое будет.

V>Т.е. этот вопрос даже для затравки не годится. Можно было бы выложить

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

Зачем им это делать, если им это не нужно?
Re[10]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 24.02.12 13:08
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> Полный список компаний можно посмотреть на сайте hh.ru

V>Причем тут хаха.ру, когда речь идет об одной конкретной.

Извини, забыл тег [sarcasm]
Re[6]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:09
Оценка: +1
Здравствуйте, Mr.Cat, Вы писали:

MC>А при чем здесь системные знания? Допустим, я иду на собеседование, допустим, на джава-разработчика. То, что имеет в джаве конкретное значение (списки, ссылки и т.п.) я в этом значении и понимаю. Какое мне дело до чьих-то системных знаний?


Ну вам может быть и никакого, а моя практика показала, что люди, не знающие базовых вещей, вместо простых и эффективных решений пишут глючный быдлокод, на переделывание которого потом надо тратить время и деньги.
Re[4]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:13
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Ну это очень пространное определение. Если не брать в расчет опечатки и знание деталей редкоиспользуемого API, то у любой задачи, например, бывают граничные случаи, которые не позволяют ее решить за пять минут. Квиксорт, например, из таких.


Да, и если человек не может увидеть и обработать все граничные случаи в алгоритме обращения списка, что он тогда будет делать в раельных задачах, где граничных случаем на несколько порядков больше? try-catch везде лепить? Знаем, видели таких, идиотов дешевле не брать, чем потом увольнять.
Re[2]: Задача на собеседовании - обращение списка.
От: Handie  
Дата: 24.02.12 13:14
Оценка: 7 (2) -5 :)
Здравствуйте, B0FEE664, Вы писали:

BFE>Здравствуйте, Паблик Морозов, Вы писали:


ПМ>>2. Если сраз нафиг, то как грамотно построить интервью, чтобы дать эту задачу в самом начале, не слишком сильно человека шокировав, и распрощаться втечение пяти минут, не слишком обидев?


BFE>А вы можете её сами написать за 5 минут? Я вот по часам засекал, за 12 минут вот такой результат:

BFE>Опыт программирования больше 10 лет.

Я бы задумался. Человек 10 лет программирует, а все не научился стандарные библиотеки использовать

std::list<int> list;
...
std::reverse(list.begin(), list.end())

40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".

На мой взгляд — плохо
Re[7]: Задача на собеседовании - обращение списка.
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 24.02.12 13:15
Оценка: 15 (1) +1 :)
Здравствуйте, Паблик Морозов, Вы писали:

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


G>>Далеко не каждый способен "за 5 минут" написать алгоритм, который "видел хоть раз в жизни".

G>>Я вот уверен что большинство сходу не напишет поиск максимальной подпоследовательности за O(n), хотя почти все его видели.

ПМ>Мы говорим про быструю сортировку. Думаю те, кто её видели, со мной согласятся.

Зря ты так думаешь.

ПМ>Что значит "максимальная подпоследовательность" я не знаю

http://www.google.ru/search?aq=f&amp;sourceid=chrome&amp;ie=UTF-8&amp;q=%D0%BC%D0%B0%D0%BA%D1%81%D0%B8%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F+%D0%BF%D0%BE%D0%B4%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C


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]: Задача на собеседовании - обращение списка.
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 24.02.12 13:19
Оценка: -2 :))
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, gandjustas, Вы писали:


L>>>IEnumerable — это итератор, а не список. Список — это List.


G>>Смотри что Кнут пишет про список.


L>Ага. Бросился перечитывать все 4 тома. Цитату приведи.


Ага, бросился перепечатывать бумажную книгу.

G>>>>Рекурсия для списков, а не для строк C#.

L>>>Ну так объясни, причем тут рекурсия. Все равно непонятно.
G>>Для списков чтоли?

L>Даю тебе три попытки дагадаться. Тольк не смотри название темы и предыдущие сообшения в ветке.

А то что все списки — рекурсивные структуры и все алгоритмы с ними рекурсивны по своей природе. Сам не догадался?
Это должно быть еще более очевидно, чем реализация этих алгоритмов.
Re[10]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:20
Оценка:
Здравствуйте, UA, Вы писали:

UA>Почему начали спрашивать со списков? Доставайте тогда букварь из под стола и просите повторить человека алфавит для начала. Результат будет тот же.


Вывод о том, что человек знает большинство букв и умеет составлять из них осмысленные слова, я делаю на основе прочтения резюме. вывод о том, что человек знает некоторые операции языка программирования и умеет составлять из них осмысленные алгоритмы я делаю, попросив написать парочку.
Re[3]: Задача на собеседовании - обращение списка.
От: о_О
Дата: 24.02.12 13:27
Оценка: +1 :)
Здравствуйте, Handie, Вы писали:

H>Я бы задумался. Человек 10 лет программирует, а все не научился стандарные библиотеки использовать


H>std::list<int> list;

H>...
H>std::reverse(list.begin(), list.end())

H>40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".


надо подтверждать статус профессионала, а так же, за что платить от 150 килорублей в месяц
Re[8]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:27
Оценка:
Здравствуйте, Vzhyk, Вы писали:

V>В общем мы поняли, что не подходим друг другу. Чтобы сэкономить твое и

V>свое время было бы хорошо, чтобы ты озвучил контору, куда мне не следует
V>слать резюме.

Как я уже (3 раза) написал, мы не выставляем на публичных сайтах вакансии программистов с компенсацией 500 т.р. в месяц. Т.е. ты претендуешь именно на такую з.п. и потрудишься прочитать информацию о вакансии, у тебя и так не будет причин слать резюме. Если ты такую вакансию на публичном сайте найдёшь — можешь смело слать — она не наша.
Re[13]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 24.02.12 13:29
Оценка:
Здравствуйте, gandjustas, Вы писали:

L>>Даю тебе три попытки дагадаться. Тольк не смотри название темы и предыдущие сообшения в ветке.

G>А то что все списки — рекурсивные структуры и все алгоритмы с ними рекурсивны по своей природе. Сам не догадался?
G>Это должно быть еще более очевидно, чем реализация этих алгоритмов.

Ты можешь ответить на простой вопрос "зачем для разворота списка нужна рекурсия"?

Не нужно уходить в высокии материи и пытаться на основе того, что список пожет быть реализован как рекурсивная структура данных, делать вывод, что это неотъемлемое свойство списка.
Re[8]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:32
Оценка: 1 (1) -1 :)
Здравствуйте, elmal, Вы писали:

E>
E>clsss Node
E>{
E>   Node next;
E>};
E>

E>Ибо такое представление списка ну никак не назовешь привычным и часто используемым, и сходу про него подумать очень и очень проблематично.

Я сам пишу им представление, если возникают проблемы (а для себя ставлю галочку "ООП головного мозга"), что тоже не плюс.
Re[6]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:36
Оценка:
Здравствуйте, alzt, Вы писали:

A>Отсеивать надо, если ты считаешь, что приобрести такой навык сложно. Если человека можно научить за пару часов решать подобные задачи — то стоит ли отсеивать людей по этому критерию?


Навык писать нормальный рабочий код приобрести сложно.
Re[2]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 24.02.12 13:41
Оценка:
Здравствуйте, B0FEE664, Вы писали:

BFE>Здравствуйте, Паблик Морозов, Вы писали:


BFE>А вы можете её сами написать за 5 минут?


Да.

BFE>Я вот по часам засекал, за 12 минут вот такой результат:


Ну и прекрасно. Не самый лучший, конечно, но он есть. Я бы такой принял с некоторыми оговорками.
Re[4]: Задача на собеседовании - обращение списка.
От: Handie  
Дата: 24.02.12 13:41
Оценка:
H>>40 строк кода на переизобретение велосипеда в стиле C, полное неумение пользоваться C++, шаблонами и STL, страсть к низкоуровневому решению задачи и концентрация не на решении проблемы а на показывании "мастерства".

о_О>надо подтверждать статус профессионала, а так же, за что платить от 150 килорублей в месяц


Профи напишет
std::reverse(list.begin(), list.end())

умник создаст свой список и будет его реверсить через указательную арифметику.

я ценю специалистов которые решают проблемы бизнеса а не показывают мастерство программирования
Re[5]: Задача на собеседовании - обращение списка.
От: Mr.Cat  
Дата: 24.02.12 13:49
Оценка:
Здравствуйте, Паблик Морозов, Вы писали:
ПМ>что он тогда будет делать в раельных задачах, где граничных случаем на несколько порядков больше?
Напишет тесты, очевидно же. Не все любят компилировать в уме и учить википедию наизусть.
Re[6]: Задача на собеседовании - обращение списка.
От: Codechanger Россия  
Дата: 24.02.12 13:55
Оценка: +2
Вообще, имхо, задача собеседования — определить адекватность кандидата и способность мыслить. Остальное обычно проистекает из желания показать собственное превосходство.
Re[14]: Задача на собеседовании - обращение списка.
От: Vzhyk  
Дата: 24.02.12 13:56
Оценка:
24.02.2012 16:07, Lloyd пишет:

> Это не суть важно. В переделе то же самое будет.

Вот и пролетел ты со школьными своими знаниями — это важно. Можешь на
вики посмотреть, можешь пару учебников качнуть.
А вот то, что важно — это бессмысленность данного вопроса.

> Зачем им это делать, если им это не нужно?

Тут я тебя уже не понял. Кому им и что не нужно?
Posted via RSDN NNTP Server 2.1 beta
Re[8]: Задача на собеседовании - обращение списка.
От: msk78 Россия http://miccro.livejournal.com
Дата: 24.02.12 13:59
Оценка:
Здравствуйте, Vzhyk, Вы писали:

V>24.02.2012 15:38, Паблик Морозов пишет:


>> кандидатов на публичных сайтах вакансий не ищем.

V>В общем мы поняли, что не подходим друг другу. Чтобы сэкономить твое и
V>свое время было бы хорошо, чтобы ты озвучил контору, куда мне не следует
V>слать резюме.
Могу дать ответ на этот вопрос
Компания BrightConsult.

Если Вы ткнёте в профайле Паблика Морозова на первое сообщение в форуме, то попадёте на: http://rsdn.ru/forum/job/4260056.aspx
Автор: Паттерн-Фигаттерн
Дата: 05.05.11

Где он фигурирует под псевдонимом Паттерн-Фигатерн

И Вы же с ним и дискутировали
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.