Как вы лечите свою жабу?

User avatar
dotcom
Уже с Приветом
Posts: 9035
Joined: 25 Oct 2011 19:02
Location: SVO->ORD->SFO

Re: Как вы лечите свою жабу?

Post by dotcom »

Kolbasoff wrote:Ну, кокой-нить пузырек и реверсал массива я рожу в муках, но не больше. Что там на таких тестах спрашивают? Истязатели будут, кстати, из Калифорнии. dotcom, вас случайно не подряжали на садирование дюда с восточного побережья завтра в 3pm PST? А то я сразу лучше скажу, где патроны зарыл.
Не, я пузырьки на этой неделе никому давать не собирался. И без меня есть истязатели в Калифорнии.
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

Kolbasoff wrote:Вот что написала рекрутерша: "... The interview will be mostly technical, and they will have you complete some code using the screen sharing capability so I would recommend brushing up on any of the technologies in the job description that you don’t feel as strong in." Что это за зверь такой? Они меня будут просить из головы хреначить Спринг-код? Я под пистолетом его не напишу без API Reference как минимум, a лучше с доступом к best practices. Ну, кокой-нить пузырек и реверсал массива я рожу в муках, но не больше. Что там на таких тестах спрашивают? Истязатели будут, кстати, из Калифорнии. dotcom, вас случайно не подряжали на садирование дюда с восточного побережья завтра в 3pm PST? А то я сразу лучше скажу, где патроны зарыл.
Если это наши калифорнийские перцы, то обычно спрашивают в зависимости от времени - если время 30 минут, то меня последний раз спрашивали

Написать фибаначи числа. Я написал за минуту типо

return (n < 3) ? 1 : fib(n-1) + fib(n-2);

Чел особо не осерчал и попросил высказаться по поводу того сколько это будет в О ноташин. Здесь я припух и оставшиеся двадцать минут выводил верхнию оценку этого дела типо 2 в степени N.

так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.

printBST ( Node t) {
if (t != null) {
System.out.println (t.value);
printBST (t.left);
printBST (t.right);
}

Я это уже печатаю с закрытыми глазами блин :angry:

Более сложные козлы (индюки) могут спросить чой нибудь из классики например у меня один индюк спросил решить проблему Sleeping Barber - я его переспросил он не будет возражать если я ее решу с помощью очереди с блокировкой?

Йаа-йаа последовало довольное булькание индюка.

Через пять минут когда я ему код написал - индюк очень рассроился и попросил решить через семафор так как очередь с блокировкой "он не понимай".
Я даже по приколу опубликовал решение в блоге http://vyatkins.wordpress.com/2013/12/2 ... r-problem/
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
crypto5
Уже с Приветом
Posts: 4637
Joined: 24 Oct 2009 01:38
Location: Chicago ;-) -> SFBA!

Re: Как вы лечите свою жабу?

Post by crypto5 »

Sergunka wrote: Чел особо не осерчал и попросил высказаться по поводу того сколько это будет в О ноташин. Здесь я припух и оставшиеся двадцать минут выводил верхнию оценку этого дела типо 2 в степени N.

так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.
Там смешно получается, время вычисления числа фибоначи таким образом получается равно самому числу фибоначи, и совсем не 2^n ))
In vino Veritas!
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

crypto5 wrote:
Sergunka wrote: Чел особо не осерчал и попросил высказаться по поводу того сколько это будет в О ноташин. Здесь я припух и оставшиеся двадцать минут выводил верхнию оценку этого дела типо 2 в степени N.

так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.
Там смешно получается, время вычисления числа фибоначи таким образом получается равно самому числу фибоначи, и совсем не 2^n ))
ну это понятно что смешно когда знаешь. На самом деле алгоритм за двадцать минут оценки у меня не получилось придумать - сошлись что 2^n в первом приближении должен работать.

Вроде как само доказательство выглядит таким образом
For F(1), the answer is 1 (the first part of the conditional).

For F(n), the answer is F(n-1) + F(n-2).

So what function satisfies these rules? Try a^n:

a^n == a^(n-1) + a^(n-2)

Divide through by a^(n-2):

a^2 == a + 1

Solve for a and you get (1+sqrt(5))/2 ~ (~θ(1.6n))
http://stackoverflow.com/questions/3607 ... i-sequence

в стековерфло.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
crypto5
Уже с Приветом
Posts: 4637
Joined: 24 Oct 2009 01:38
Location: Chicago ;-) -> SFBA!

Re: Как вы лечите свою жабу?

Post by crypto5 »

Ну как бы знание лежит на поверхности, O(F(n)) = O(F(n-1)) + O(F(n-2)), где O(F(0))=O(F(1))=1, получается число Фибоначи.
In vino Veritas!
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

вообще у меня есть большущий файл с собранием всяких примеров на джаве - я его обычно держу под рукой и печатаю из него решения когда просят закодить из дома :D
собственно я его сейчас приэтейчу там много разного мусора походу но вцелом дает общее понимание процесса и что спрашивают.
You do not have the required permissions to view the files attached to this post.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Kolbasoff
Уже с Приветом
Posts: 3481
Joined: 02 Jan 2005 22:10

Re: Как вы лечите свою жабу?

Post by Kolbasoff »

Sergunka wrote:...спросил решить проблему Sleeping Barber [...] Через пять минут когда я ему код написал - индюк очень рассроился и попросил решить через семафор так как очередь с блокировкой "он не понимай".
За 5 минут? Ох, п-ц мне... Все, пора на пасеку выдвигаться. Ну а гуглой-то хоть дают пользоваться?
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

crypto5 wrote:Ну как бы знание лежит на поверхности, O(F(n)) = O(F(n-1)) + O(F(n-2)), где O(F(0))=O(F(1))=1, получается число Фибоначи.
Технически это не является ответом если бы даже меня осенило в тот момент :D ответ все-таки (~θ(1.6n))
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

Kolbasoff wrote:
Sergunka wrote:...спросил решить проблему Sleeping Barber [...] Через пять минут когда я ему код написал - индюк очень рассроился и попросил решить через семафор так как очередь с блокировкой "он не понимай".
За 5 минут? Ох, п-ц мне... Все, пора на пасеку выдвигаться. Ну а гуглой-то хоть дают пользоваться?
Да не парься я перед этим очень много и разнообразно писал на очереди с блокировкой в суплай-консьюмер патерне так что даже API помнил.

Можно пользоваться только вторым компьютером :-) у меня иногда супруга сидит и гуглит мне решения если в моем списке вдруг не оказалось. Клаву надо иметь безвучную для поиска.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
АццкоМото
Уже с Приветом
Posts: 15276
Joined: 01 Mar 2007 05:18
Location: VVO->ORD->DFW->SFO->DFW->PDX

Re: Как вы лечите свою жабу?

Post by АццкоМото »

Sergunka wrote: так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.

printBST ( Node t) {
if (t != null) {
System.out.println (t.value);
printBST (t.left);
printBST (t.right);
}

Я это уже печатаю с закрытыми глазами блин :angry:
А разве это правильно? Вроде же печать собственного значения должна быть промеж левого и правого рекурсивного вызова, нет?
Мат на форуме запрещен, блдж!
nett
Уже с Приветом
Posts: 398
Joined: 14 Sep 2007 10:15
Location: BY -> VA -> CA

Re: Как вы лечите свою жабу?

Post by nett »

АццкоМото wrote:
Sergunka wrote: так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.

printBST ( Node t) {
if (t != null) {
System.out.println (t.value);
printBST (t.left);
printBST (t.right);
}

Я это уже печатаю с закрытыми глазами блин :angry:
А разве это правильно? Вроде же печать собственного значения должна быть промеж левого и правого рекурсивного вызова, нет?
Ну это зависит от того что попросили. Если надо распечатать отсортировано то тогда да: левый, само значение, правый.
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Как вы лечите свою жабу?

Post by Sergunka »

АццкоМото wrote:
Sergunka wrote: так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.

printBST ( Node t) {
if (t != null) {
System.out.println (t.value);
printBST (t.left);
printBST (t.right);
}

Я это уже печатаю с закрытыми глазами блин :angry:
А разве это правильно? Вроде же печать собственного значения должна быть промеж левого и правого рекурсивного вызова, нет?
Это зависит от того в каком порядке хочешь напечатать. В данном случае понятно первым будет напечатана ветка от корневого узла и вплоть до минимального значения.

Если поставить печать после левого узла то напечатает дерево в порядке возрастания от минимума к максимуму.

Code: Select all

    printBST (t.left);
    System.out.println (t.value);
    printBST (t.right);
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
АццкоМото
Уже с Приветом
Posts: 15276
Joined: 01 Mar 2007 05:18
Location: VVO->ORD->DFW->SFO->DFW->PDX

Re: Как вы лечите свою жабу?

Post by АццкоМото »

nett wrote:
АццкоМото wrote:
Sergunka wrote: так же популярно спросить про деревья типо BST распечатать потом типо распечатать чтоб было сразу отсортированно.

printBST ( Node t) {
if (t != null) {
System.out.println (t.value);
printBST (t.left);
printBST (t.right);
}

Я это уже печатаю с закрытыми глазами блин :angry:
А разве это правильно? Вроде же печать собственного значения должна быть промеж левого и правого рекурсивного вызова, нет?
Ну это зависит от того что попросили. Если надо распечатать отсортировано то тогда да: левый, само значение, правый.
Красным в цитате
Мат на форуме запрещен, блдж!
User avatar
АццкоМото
Уже с Приветом
Posts: 15276
Joined: 01 Mar 2007 05:18
Location: VVO->ORD->DFW->SFO->DFW->PDX

Re: Как вы лечите свою жабу?

Post by АццкоМото »

Sergunka wrote:Если поставить печать после левого узла то напечатает дерево в порядке возрастания от минимума к максимуму.

Code: Select all

    printBST (t.left);
    System.out.println (t.value);
    printBST (t.right);
Дык вроде ж такая задача и была.
Вообще за это подобные задачи не люблю. Вроде как можешь с закрытыми глазами написать, а вечно либо втупишь где-то по-мелочи, либо нюанс в постановке задачи пропустишь
Мат на форуме запрещен, блдж!
User avatar
Kolbasoff
Уже с Приветом
Posts: 3481
Joined: 02 Jan 2005 22:10

Re: Как вы лечите свою жабу?

Post by Kolbasoff »

АццкоМото wrote:Вообще за это подобные задачи не люблю.
Я вот сейчас прохожу через интервью всякие... Че-то мне кажется, что таким образом можно отбирать народ для участия в хэкатонах, а не для реального "промышленного" погромизма. По-моему, правильнее было бы давать кандидатам большие задания - не на час, а на день или даже на неделю. Что те спокойно посидели, подумали, задизайнили, протестировали, задокументировали бы. Т.е. именно то, что требуется в реальной жизни.

А вот еще вопрос - в этих on-line tests, там код пишешь и можно его запустить и оттестировать или просто сваял текст и потом объясняешь, что и зачем?

Return to “Работа и Карьера в IT”