Какая боль, какая боль
Aug. 9th, 2012 12:45 amУ Йона Бентли прочитал однажды про поиск методом половинного деления: Большинство программистов полагают, что про приведенному выше описанию можно легко написать код. Они ошибаются. Не верите — отложите на время книгу и напишите сами. Попробуйте. Отложил, написал, работает. Ну ладно.
Сейчас вот ширим ряды, собеседую разработчиков. Дай, думаю, подкину задачку, посмотрим. И что же? Пока 2:0 в пользу Бентли. Ладно бы кандидаты написали не вполне корректно, я бы простил. Но они просто ничего не написали! Вот задумайтесь: профессиональные разработчики с многолетним стажем не смогли внятно записать на бумаге школьный алгоритм на своем любимом языке программирования. Не укладывается это в моей бедной голове.
Индусы, говорите? Ха.
no subject
Date: 2012-08-08 09:03 pm (UTC)no subject
Date: 2012-08-09 07:18 pm (UTC)no subject
Date: 2012-08-08 10:09 pm (UTC)$start = 0; $end = 1000; do { $guess = myGuess($start, $end); echo "My guess is {$guess}. Is your number (g)reater, (s)maller or (e)qual? "; $line = trim(fgets(STDIN)); if ($line == "g") { // bigger $start = $guess+1; } elseif ($line == "s") { // smaller $end = $guess-1; } elseif ($line == "e") { // equal die("And the answer is: ".$guess."\n"); } else { echo "Please enter 'e' for x == {$guess}, 's' if x < {$guess} or 'g' for x > {$guess}\n"; } } while (true); function myGuess($start, $end) { return round(($start+$end)/2); }Типа такого что-то?
no subject
Date: 2012-08-09 07:23 pm (UTC)Правда ведь, не очень сложно?
no subject
Date: 2012-08-10 11:56 am (UTC)no subject
Date: 2012-08-09 05:34 am (UTC)while ((b-a) > precision)
{
c = (a+b)/2;
if(f(b)*f(c)<0)
a=c;
else
b=c;
}
precision это в принципе некая желаемая точность.. ну, понятно, что начальные точки отрезка надо определить и саму функцию задать - просто кнопки давить лень...
но я опять о своём - я не понял задания или как хотя бы ЭТО можно было не написать?...
no subject
Date: 2012-08-09 07:30 pm (UTC)no subject
Date: 2012-11-24 09:38 am (UTC)Можно сказать, что написание классических алгоритмов - велосипедизм и стоит использовать готовые решения - наверняка он есть и для контейнеров в C#, но беда в том, что они не понимают, как это работает и не могут оценить сложность (трудность). Видимо это какой-то фундаментальный пробел в образовании + отсутствие интереса.
no subject
Date: 2012-11-24 09:17 pm (UTC)no subject
Date: 2012-11-25 06:22 am (UTC)