Re[3]: Порка ganjustas
От: Ops Россия  
Дата: 26.02.12 14:15
Оценка:
Здравствуйте, b-3, Вы писали:

Какой ужас этот ваш додиез
как-то так, за 5 минут, правда не тестил:

int max_subsequence(int arr_size, int * values, int seq_size)
{
    assert(arr_size >= seq_size);
    int pos_begin=0;
    int pos_end=seq_size-1;
    int max_pos=0;
    int sum=0;
    for(int i = 0;i< seq_size;i++)
        sum+=values[i];
    int max_sum = sum;
    while (pos_end < arr_size-1)
    {
        sum = sum - values[pos_begin++] + values[++pos_end];
        if (max_sum < sum)
        {
            max_pos = pos_begin;
            max_sum = sum;
        }
    }
    return max_pos;
}

ЗЫ. алгоритма в глаза не видел, просто как-то в голову пришло
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[3]: Задача на собеседовании - обращение списка.
От: Ромашка Украина  
Дата: 26.02.12 14:34
Оценка:
26.02.2012 11:23, Здравствуйте, Stanislav V. Zudin :
> LinkedList <http://msdn.microsoft.com/en-us/library/he2s3bh7.aspx&gt;.

Мне лень лезть в рефлектор и смотреть как оно реализовано. Даже если как
классический двунаправленный список, то пофиг -- задача все равно
выродилась в убожество.
Posted via RSDN NNTP Server 2.1 beta


Всё, что нас не убивает, ещё горько об этом пожалеет.
Re: Задача на собеседовании - обращение списка.
От: buser  
Дата: 26.02.12 15:18
Оценка:
Здравствуйте, Паблик Морозов, Вы писали:

ПМ>Почему 9 из 10 соискателей не могут её решить?


Всё что написали — читать не стал... Так не могут или сразу отказываются продолжать интервью? А про "гномов" — зачет! Сразу вспоминаю одно из своих собеседований... Не удержался тогда — "макнул" мальчика в... Но хоть его коллеги от души посмеялись Похоже он и их зае...ь успел своим "пафосом"
YAGNI
Re[4]: Порка ganjustas
От: samius Япония http://sams-tricks.blogspot.com
Дата: 26.02.12 15:54
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>
Ops>int max_subsequence(int arr_size, int * values, int seq_size)
Ops>

Ops>ЗЫ. алгоритма в глаза не видел, просто как-то в голову пришло

А что такое seq_size? Какая задача решалась?
Re[5]: Порка ganjustas
От: Ops Россия  
Дата: 26.02.12 17:53
Оценка:
Здравствуйте, samius, Вы писали:

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


Ops>>
Ops>>int max_subsequence(int arr_size, int * values, int seq_size)
Ops>>

Ops>>ЗЫ. алгоритма в глаза не видел, просто как-то в голову пришло

S>А что такое seq_size? Какая задача решалась?

Поиск наибольшей (или наименьшей, тут непринципиально) последовательности за 1 проход.
Где-то выше ganjustas сформулировал.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[6]: Порка ganjustas
От: samius Япония http://sams-tricks.blogspot.com
Дата: 26.02.12 18:19
Оценка:
Здравствуйте, Ops, Вы писали:

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


S>>А что такое seq_size? Какая задача решалась?

Ops>Поиск наибольшей (или наименьшей, тут непринципиально) последовательности за 1 проход.
Ops>Где-то выше ganjustas сформулировал.

Разве в той формулировке была указана длина последовательности?
Re[10]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 26.02.12 19:51
Оценка:
Здравствуйте, jhfrek, Вы писали:

J>первокурсник, обладающий теоретическими знаниями, может писать не оптимальные запросы, просто потому что у него нет опыта и знаний какие именно запросы оптимальны. Если вы готовы подождать пока он этого опыта наберется, то можно брать и первокурсника.


А какой тут нужен опыт? Оптимальность прямо следует из теории. А вот если человек не знает, как работает join, например, и не сможет назвать сложность поиска по индексу (сложность операций в деревьях и хеш-таблицах — это второй вопрос после разворота списка, неправильный ответ на который приводит к преждевременному завершению интервью) — то никакой опыт ему не поможет.
Re[8]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 26.02.12 19:53
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Лучше сразу на сербскохорватском, а то вдруг и его не знает.


Сербохорвацкий нужен в сербскохорватии, а в программировании нужен английский (единственное исключение — платформа 1С, но это даже не программированием называется, а конфигурацией).
Re[4]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 26.02.12 19:54
Оценка:
Здравствуйте, Eye of Hell, Вы писали:

EOH>Тада все нормально. К нам на такие деньги большинство кандидатов тоже конструктор от деструктора не отличают . Видимо, рынок сейчас такой.


А сколько надо платить, чтобы отличал?
Re[6]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 26.02.12 19:57
Оценка:
Здравствуйте, Banned by IT, Вы писали:

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


MC>>>Они еще про гору Фудзи спрашивают(ли), тоже на вооружение возьмёте?

ПМ>>Возьму. Не вижу причин не брать на вооружение зарекомендовавшие себя практики.
BBI>Начнём с того, что ты знаешь только то, что такой вопрос задают. Но совершенно не знаешь зачем они его задают, и как они именно они трактуют рассуждения собеседуемого.

Именно поэтому я его и не задаю. Когда разберусь как это работает, буду использовать.

BBI>Так что "зарекомендовавшая" это очень громко сказано.


Non sequitur. Практика как раз есть. Просто я не владею технологией.
Re[6]: Задача на собеседовании - обращение списка.
От: Паблик Морозов  
Дата: 26.02.12 20:02
Оценка:
Здравствуйте, Ромашка, Вы писали:

Р>А можно про подсказки подробнее? Блин, это задача на понимание

Р>указателей, коих ни в шарпе ни в жабе нет.

Нифига себе нет! Все объекты передаются по ссылкам. Адресной арифметики нет, но она и не нужна.

Р>избыточность получается жуткая, по сравнению с плюсами, где оригинальная


Нет никакой избыточности, всё как в C или в С++, один в один (только без уродских звёздочек и стрелочек).
Re[3]: Задача на собеседовании - обращение списка.
От: antonio_banderas Россия  
Дата: 26.02.12 20:20
Оценка:
Здравствуйте, Паблик Морозов, Вы писали:

ПМ>Ну, допустим, от 100т.р. на руки.


Ну, от 100 это вроде не мало.
Значит, придумывайте, как настраивать первичный фильтр, чтоб тупых с минимальными усилиями срезать.
Re[5]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 26.02.12 20:29
Оценка:
Здравствуйте, Паблик Морозов, Вы писали:

EOH>>Тада все нормально. К нам на такие деньги большинство кандидатов тоже конструктор от деструктора не отличают . Видимо, рынок сейчас такой.


ПМ>А сколько надо платить, чтобы отличал?


Самое абсурдное, имхо, увеличение планки только увеличит кол-во неадекватов, т.к. для них это будет дополнительный стимул попытаться (ого, дежищщи какие), а нормальный разработчик, адекватно оценивающий степень своей некомпетентности, сочтет предъявляемые требования чересчур жесткими для него.
Re[5]: Задача на собеседовании - обращение списка.
От: Eye of Hell  
Дата: 26.02.12 23:35
Оценка:
EOH>>Тада все нормально. К нам на такие деньги большинство кандидатов тоже конструктор от деструктора не отличают . Видимо, рынок сейчас такой.
ПМ>А сколько надо платить, чтобы отличал?

Если бы я знал .
Re[5]: Задача на собеседовании - обращение списка.
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 27.02.12 00:07
Оценка:
Здравствуйте, Паблик Морозов, Вы писали:

ПМ>А сколько надо платить, чтобы отличал?


А ты уверен, что тебе действительно нужен человек, который будет отличать? В большинстве случаев, при грамотной постановке задач, подойдут разработчики чуть умнее обезьяны. Для остальных, крайней редких задач,, планку стоило бы, конечно, на 30-50% поднять.
Re[7]: Задача на собеседовании - обращение списка.
От: SkyDance Земля  
Дата: 27.02.12 00:37
Оценка:
ПМ> Давать компьютер и закрывать в комнате на 3 часа, пока не напишет сапёр — издевательство.

Может и издевательство, но только так удастся проверить — способен ли человек реально что-то напрограммировать. Понятно, стресс и все такое — но это мелочи в сравнении с издевательскими вопросами.
Re[12]: Задача на собеседовании - обращение списка.
От: samius Япония http://sams-tricks.blogspot.com
Дата: 27.02.12 06:44
Оценка: +1
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, Ромашка, Вы писали:


Р>>List в C#, как меня недавно ткнули носом, нифига не список, а массив.


L>Нет, это тот, кто тебя ткнул, переносит свой плюсовый опыт, не задумываяь на другие области.

Почему обязательно плюсовый? Не только плюсовики под списком подразумевают связный список. Как минимум все или значительная часть функциональщиков.

L>Посмотрите, что такое список в википедии и ткните его самого.

Да, в википедии написано что List — абстрактная структура данных, которая типично реализуется с помощью связных списоков или массивов (динамических массивов).
Там же написано

The name list is also used for several concrete data structures that can be used to implement abstract lists, especially linked lists.


http://en.wikipedia.org/wiki/List_%28abstract_data_type%29#Operations
Набор операций как бы намекает на связные списки

http://en.wikipedia.org/wiki/List_%28abstract_data_type%29#Implementations

Lists are typically implemented either as linked lists (either singly or doubly linked) or as arrays, usually variable length or dynamic arrays.

The standard way of implementing lists, originating with the programming language Lisp, is to have each element of the list contain both its value and a pointer indicating the location of the next element in the list.


В конце концов
http://en.wikipedia.org/wiki/List_%28abstract_data_type%29#Abstract_definition

Так какого надо было для частной реализации на динамическом массиве использовать имя, которое обозначается как для абстрактной структуры данных, так и для реализаций по типу связных списков, которые являются стандартной реализацией абстрактного списка?
Re[13]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 27.02.12 06:51
Оценка:
Здравствуйте, samius, Вы писали:

L>>Нет, это тот, кто тебя ткнул, переносит свой плюсовый опыт, не задумываяь на другие области.

S>Почему обязательно плюсовый? Не только плюсовики под списком подразумевают связный список. Как минимум все или значительная часть функциональщиков.

S>Так какого надо было для частной реализации на динамическом массиве использовать имя, которое обозначается как для абстрактной структуры данных, так и для реализаций по типу связных списков,


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

S>которые являются стандартной реализацией абстрактного списка?


О каком таком стандарте вы говорите?
Re[14]: Задача на собеседовании - обращение списка.
От: samius Япония http://sams-tricks.blogspot.com
Дата: 27.02.12 06:56
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


S>>Так какого надо было для частной реализации на динамическом массиве использовать имя, которое обозначается как для абстрактной структуры данных, так и для реализаций по типу связных списков,


L>Я думаю, мотивация достаточно проста — для большинства случаев использования удобен список на основе массива, а раз так, то имеет смысл использовать более краткое название для такого типа списков.


Если следовать такой логике, то Dictionary наверное тоже должен был бы называться по-короче?

S>>которые являются стандартной реализацией абстрактного списка?


L>О каком таком стандарте вы говорите?

Я говорю о стандартном способе реализации, который не я придумал. Цитату из википедии я приводил.
Re[15]: Задача на собеседовании - обращение списка.
От: Lloyd Россия  
Дата: 27.02.12 06:59
Оценка:
Здравствуйте, samius, Вы писали:

L>>Я думаю, мотивация достаточно проста — для большинства случаев использования удобен список на основе массива, а раз так, то имеет смысл использовать более краткое название для такого типа списков.


S>Если следовать такой логике, то Dictionary наверное тоже должен был бы называться по-короче?


Dictionary несколько затруднительно сократить, уже одно слово.

S>>>которые являются стандартной реализацией абстрактного списка?


L>>О каком таком стандарте вы говорите?

S>Я говорю о стандартном способе реализации, который не я придумал. Цитату из википедии я приводил.

По какой причине должен быть выбран именно такой "стандарт"?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.