Какая-то унылая функция у Партии. Какие-то деления на 2, вместо того, чтобы сравнивать указатели, какой-то void* который функция не возвращает.Леонид Ильич Брежнев wrote:Сабина wrote:Мне вот например жутко интересно какого же кода то он от нее ждал:)?olis wrote: Я видимо тоже отчасти виноват. Попросил написать функцию переворачивания сторки чтобы просто понять как человек логически мыслит и пишет элементарный код.
Вот от меня какой то выпускник МГУ требовал с буфером в один байт ( или даже бит не помню ) -.это интересно что за зверь такой ?Code: Select all
void* reverseString (char* str) { int len = strlen(str); char* end = str + len -1; char t; for (int i = 0; i < len/2 -1; i++) { t = *str; *str++ = end; *end-- = t; } }
Архитектор из дома
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Архитектор из дома
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Архитектор из дома
Можно вообще без буфера это сделать (XOR swap). А вообще неистребима функция переворачивания строки на Привете, сколько себя здесь помню, так или иначе реверс строки всплывал и даже народ усердно постил решения этой важной проблемы.Сабина wrote: Вот от меня какой то выпускник МГУ требовал с буфером в один байт ( или даже бит не помню ) -.это интересно что за зверь такой ?
А то может мне надо было просто отпросится в туалет и разрыдаться вдрызг, а я не поняла что хочут
-
- Уже с Приветом
- Posts: 2924
- Joined: 01 Apr 2004 04:22
Re: Архитектор из дома
и часто документируется? Мне раньше казалось, что програмист отличается от не програмиста тем, что 1й пишет код для людей, 2й - для машин. Теперь мне так не кажется.Интеррапт wrote: то всегда можно посмотреть, документируется ли код в самих исходниках. При нормально задокументированных исходниках - всегда можно сгенерить документацию.
Я боюсь, что наступит день, когда технологии превзойдут простое человеческое обшение. И мир получит поколение идиотов (c)
-
- Уже с Приветом
- Posts: 8628
- Joined: 22 Mar 2011 01:40
Re: Архитектор из дома
Не, void*, это неаккуратно удаленный char*, к которoму добавили void.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Архитектор из дома
Обязательно и всегда документируется.Ljolja wrote:и часто документируется? Мне раньше казалось, что програмист отличается от не програмиста тем, что 1й пишет код для людей, 2й - для машин. Теперь мне так не кажется.Интеррапт wrote: то всегда можно посмотреть, документируется ли код в самих исходниках. При нормально задокументированных исходниках - всегда можно сгенерить документацию.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Архитектор из дома
А return где?Леонид Ильич Брежнев wrote:Не, void*, это неаккуратно удаленный char*, к которoму добавили void.
А... понял о чем ты.
-
- Уже с Приветом
- Posts: 8628
- Joined: 22 Mar 2011 01:40
Re: Архитектор из дома
Kакой у войда return?Интеррапт wrote:А return где?Леонид Ильич Брежнев wrote:Не, void*, это неаккуратно удаленный char*, к которoму добавили void.
А... понял о чем ты.
-
- Уже с Приветом
- Posts: 14407
- Joined: 26 May 2006 02:39
Re: Архитектор из дома
Лол. А до такого кто-то додумался?:)
Code: Select all
for ( i= 0, s = s + s, length= s.length / 2; i > length ; i++ )
{
s[i] = s[length-i]
s[length-i] = null;
}
Бога нет.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Архитектор из дома
Ну так ты так написал про неаккуратно удаленные и т.п., что не понял, что ты имел в виду. Проехали.Леонид Ильич Брежнев wrote:Kакой у войда return?Интеррапт wrote:А return где?Леонид Ильич Брежнев wrote:Не, void*, это неаккуратно удаленный char*, к которoму добавили void.
А... понял о чем ты.
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Архитектор из дома
stenking wrote: Я джаву не знаю вообще-то. По моему там поинтеров как раз нет и адресса менять не получится, разве нет? По моему как раз код должен быть таким, простой и понятный. Без всяких рекурсий и фантазий на тему а что если строчка имеет биллион символов а памяти нет и не будет.. Но я уверен что olis хотел именно такой простой код выше. Это же простой тест на "свой-чужой".
Так вообще есть функция StringBuffer.reverse . Даже в Джаваскрипте это oneliner
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 2924
- Joined: 01 Apr 2004 04:22
Re: Архитектор из дома
не вылезти чере окно и плотно закрыть его за собой, тогда интервьюер забудет о так и не обрашеных строках, и займется более увлекательной задачей - что случилось с кандидаткойСабина wrote: А то может мне надо было просто отпросится в туалет и разрыдаться вдрызг, а я не поняла что хочут
Я боюсь, что наступит день, когда технологии превзойдут простое человеческое обшение. И мир получит поколение идиотов (c)
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Архитектор из дома
Runaway candudetteLjolja wrote:не вылезти чере окно и плотно закрыть его за собой, тогда интервьюер забудет о так и не обрашеных строках, и займется более увлекательной задачей - что случилось с кандидаткойСабина wrote: А то может мне надо было просто отпросится в туалет и разрыдаться вдрызг, а я не поняла что хочут
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 2924
- Joined: 01 Apr 2004 04:22
Re: Архитектор из дома
какой-то маленький проектик есть на code.google.com но с Вами мне обсуждать ничего не хочется, my badСабина wrote:stenking wrote:Странно нанимать врачей по критерию "у кого волонтёрство круче". Истины ради, у вас есть публичный гитхаб профиль с кодом который можно обсуждать ?:)Ljolja wrote:ну врачи тоже иногда волонтерят, никоторые в африку даже ездят. Вам ето кажется странным или даже подозрительным?
[/quote]Сабина wrote: Кстати в свете волонтерства вспомнился какой то прошлый разговор Лели и Интеррапта что они меньше чем за 100 в час и пальцем не пошевелят
если задача интересная и люди приятные I can do it for free, если же напротив - it doesn't matter how much
Я боюсь, что наступит день, когда технологии превзойдут простое человеческое обшение. И мир получит поколение идиотов (c)
-
- Уже с Приветом
- Posts: 8628
- Joined: 22 Mar 2011 01:40
Re: Архитектор из дома
Я вот не знаю, кого можно нанять вот такой тухлятиной? Причем и написанием/разворачиванием linked lists и atoi() они имхо все одинаково тухло пахнут. Видел массу нардоу, которые просто в указателях, всяких вторых/третих волкерах и темпах тонули. Причем стоит чуть притопить себя, как дальче тебя начинает просто захлестывать волной.
Я даже не знаю, может оно спрашивать про третий параметер функции CreateWindowEx() это и не самая плохая идея идея сама по себе? Отвечать можно даже не вставая с места.
Я давеча беседовал с Gayle Laakmann, которая автор книжки про интевью "Cracking the Coding Interview", она новую книгу пишет теперь про PM-омов, так вот она упорно считает, что спрашивать такие вот вопросы это правильно. И книга у нее сoстоит из них же.
Я даже не знаю, может оно спрашивать про третий параметер функции CreateWindowEx() это и не самая плохая идея идея сама по себе? Отвечать можно даже не вставая с места.
Я давеча беседовал с Gayle Laakmann, которая автор книжки про интевью "Cracking the Coding Interview", она новую книгу пишет теперь про PM-омов, так вот она упорно считает, что спрашивать такие вот вопросы это правильно. И книга у нее сoстоит из них же.
-
- Уже с Приветом
- Posts: 14407
- Joined: 26 May 2006 02:39
Re: Архитектор из дома
Да мне тоже нафиг надо. Просто интересно было кто кроме интерапта что-то реально контрибьютитLjolja wrote:[какой-то маленький проектик есть на code.google.com но с Вами мне обсуждать ничего не хочется, my bad
Бога нет.
-
- Уже с Приветом
- Posts: 15475
- Joined: 27 Sep 2007 22:53
Re: Архитектор из дома
Если бы речь шла о плюсах или о чистом С то применение "for" было бы небольшим флажком копать дальше.Леонид Ильич Брежнев wrote:Сабина wrote:Мне вот например жутко интересно какого же кода то он от нее ждал:)?olis wrote: Я видимо тоже отчасти виноват. Попросил написать функцию переворачивания сторки чтобы просто понять как человек логически мыслит и пишет элементарный код.
Вот от меня какой то выпускник МГУ требовал с буфером в один байт ( или даже бит не помню ) -.это интересно что за зверь такой ?Code: Select all
void* reverseString (char* str) { int len = strlen(str); char* end = str + len -1; char t; for (int i = 0; i < len/2 -1; i++) { t = *str; *str++ = end; *end-- = t; } }
Такая многословность критикуется как в плане читабельности, так в плане простоты и эффективности. В частности Страуструп в своей нетленке подробно разбирает подобный пример. Скорее всего ожидалось ну что-то типа while(str < end) swap(*str++,*end--); и возможно продолжения дискуссии в плане обобщения этого алгоритма на другие символьные типы и контейнеры.
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Архитектор из дома
Да уж вопросец для позиции Джава девелопера на eCommerce - поддерживать sales transactions для крупного ретейлера. Там самое то было обсуждать server side performance о чем я неоднократно намекала. Но индусам был нужен шардинг и только шардинг, а менеджеру вот это фигня. Славтебо что было много других вариантовМальчик-Одуванчик wrote: Если бы речь шла о плюсах или о чистом С то применение "for" было бы небольшим флажком копать дальше.
Такая многословность критикуется как в плане читабельности, так в плане простоты и эффективности. В частности Страуструп в своей нетленке подробно разбирает подобный пример. Скорее всего ожидалось ну что-то типа while(str < end) swap(*str++,*end--); и возможно продолжения дискуссии в плане обобщения этого алгоритма на другие символьные типы и контейнеры.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 15242
- Joined: 01 Mar 2007 05:18
- Location: VVO->ORD->DFW->SFO->DFW->PDX
Re: Архитектор из дома
Очевидно, со строкой из двух симмолов этот гениальный код не сделает ничего. Ибо len/2-1==0.Леонид Ильич Брежнев wrote:Сабина wrote:Мне вот например жутко интересно какого же кода то он от нее ждал:)?olis wrote: Я видимо тоже отчасти виноват. Попросил написать функцию переворачивания сторки чтобы просто понять как человек логически мыслит и пишет элементарный код.
Вот от меня какой то выпускник МГУ требовал с буфером в один байт ( или даже бит не помню ) -.это интересно что за зверь такой ?Code: Select all
void* reverseString (char* str) { int len = strlen(str); char* end = str + len -1; char t; for (int i = 0; i < len/2 -1; i++) { t = *str; *str++ = end; *end-- = t; } }
Стало быть, имеет смысл задача.
Мат на форуме запрещен, блдж!
-
- Уже с Приветом
- Posts: 15242
- Joined: 01 Mar 2007 05:18
- Location: VVO->ORD->DFW->SFO->DFW->PDX
Re: Архитектор из дома
Очевидно, и этот код не работает, ибо length/2 всегда >=0, а значит - цикл не будет выполнен ни разуstenking wrote:Думаете мелочь? Уже большой процент зависает или пытается смарт эссом быть и рассуждать что зачем это...Сабина wrote: Мне вот например жутко интересно какого же кода то он от нее ждал:)? Очевидно что не рекурсивного примерчика что выше. А что именно ?
Code: Select all
for ( i= 0, length= s.length; i > (int) length / 2; i++ ) { temp = s[i] s[i] = s[length-i] s[length-i] = temp }
Мат на форуме запрещен, блдж!
-
- Уже с Приветом
- Posts: 808
- Joined: 13 Jan 2009 05:11
- Location: из страны восходящих закатов
Re: Архитектор из дома
шардинг всмысле это:Сабина wrote:Но индусам был нужен шардинг и только шардинг
им были интересны какие то базовые принципы ? или конкретные вопросы, как сделать то сёSharding is a type of database partitioning that separates very large databases the into smaller, faster, more easily managed parts called data shards. The word shard means a small part of a whole.
-
- Уже с Приветом
- Posts: 15242
- Joined: 01 Mar 2007 05:18
- Location: VVO->ORD->DFW->SFO->DFW->PDX
Re: Архитектор из дома
Очевидно, и это не будет работать, а s=s+s это не конкатенация строк (если мы про С), а получение указателя в небеса, которое скорей всего не отстроится даже, а если даже и представить, что это конкатенация, а вместо i>length мы все-таки напишем i<length, то мы получим строку, состоящую из length нулей а следом - исходную строкуstenking wrote:Лол. А до такого кто-то додумался?:)
Code: Select all
for ( i= 0, s = s + s, length= s.length / 2; i > length ; i++ ) { s[i] = s[length-i] s[length-i] = null; }
Народ, вы чего? Какая отличная задача оказалась
Мат на форуме запрещен, блдж!
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Архитектор из дома
Да и они пристали ко мне с конкретными вопросами как это все работает после того как я три раза упомянула что никогда с этим дела не имела . Потом то я поняла что это нужная вещь и важная для параллелизма и availability, но в позиции об этом не было и я и не заикалась что это умею. Описание как я решала аналогичные challenges с Ораклом их не волновали ни разуvopros wrote:шардинг всмысле это:Сабина wrote:Но индусам был нужен шардинг и только шардингим были интересны какие то базовые принципы ? или конкретные вопросы, как сделать то сёSharding is a type of database partitioning that separates very large databases the into smaller, faster, more easily managed parts called data shards. The word shard means a small part of a whole.
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 19041
- Joined: 11 Jan 2012 09:25
- Location: CA
Re: Архитектор из дома
На какую позицию хоть объясни Или это чисто "довести до слез" приемчикАццкоМото wrote:Очевидно, и это не будет работать, а s=s+s это не конкатенация строк (если мы про С), а получение указателя в небеса, которое скорей всего не отстроится даже, а если даже и представить, что это конкатенация, а вместо i>length мы все-таки напишем i<length, то мы получим строку, состоящую из length нулей а следом - исходную строкуstenking wrote:Лол. А до такого кто-то додумался?:)
Code: Select all
for ( i= 0, s = s + s, length= s.length / 2; i > length ; i++ ) { s[i] = s[length-i] s[length-i] = null; }
Народ, вы чего? Какая отличная задача оказалась
https://www.youtube.com/watch?v=wOwblaKmyVw
-
- Уже с Приветом
- Posts: 15242
- Joined: 01 Mar 2007 05:18
- Location: VVO->ORD->DFW->SFO->DFW->PDX
Re: Архитектор из дома
А что там объяснять-то? Я же вроде как объяснил. Ну вот давайте представим, что исходная строка "123", s=s+s ВНЕЗАПНО сделает строку 123123. length=s.length/2 даст 3Сабина wrote:На какую позицию хоть объясни Или это чисто "довести до слез" приемчикАццкоМото wrote:Очевидно, и это не будет работать, а s=s+s это не конкатенация строк (если мы про С), а получение указателя в небеса, которое скорей всего не отстроится даже, а если даже и представить, что это конкатенация, а вместо i>length мы все-таки напишем i<length, то мы получим строку, состоящую из length нулей а следом - исходную строкуstenking wrote:Лол. А до такого кто-то додумался?:)
Code: Select all
for ( i= 0, s = s + s, length= s.length / 2; i > length ; i++ ) { s[i] = s[length-i] s[length-i] = null; }
Народ, вы чего? Какая отличная задача оказалась
Понятное дело, что i>length есть ложь, поэтому вообще ничего не выполнится. но мы не звери, мы читаем как i<length
тогда на первом шаге
s[0]=s[3]
s[3]=null
результат: 123null23
на втором шаге
s[1]=s[2]
s[2]=null
13nullnull23
на третьем шаге
s[2]=s[1]
s[1]=null
1null3null23
Хотя НА САМОМ деле stenking имел в виду
s = s[length-i-1]
s[length-i-1] = null;
т.е. классическая ошибка: в строке с из N символов длина строки равна N, но индекс последнего элемента - N-1. но и тогда на выходе получилось бы nullnullnull123 - в чем легко убедиться
Мат на форуме запрещен, блдж!
-
- Уже с Приветом
- Posts: 4935
- Joined: 02 Mar 2002 10:01
- Location: UK
Re: Архитектор из дома
Да примерно того что АццкоМото написал - код в одну строчку.Сабина wrote:Мне вот например жутко интересно какого же кода то он от нее ждал:)? Очевидно что не рекурсивного примерчика что выше. А что именно ?Ljolja wrote:т.е. Вы как истинный джентльмен проводили даму до туалeта, да еше и подождали у двери (вдруг она еше сбежит, а когда следуюшая подвернется, не известно. Так ведь и не узнаешь, как строки переворачивать )olis wrote: Я видимо тоже отчасти виноват. Попросил написать функцию переворачивания сторки чтобы просто понять как человек логически мыслит и пишет элементарный код. После этого она попросилась в туалет. По дороге она мне сказала что мы злые, ее не любим и пытаемся завалить. Не знаю, может быть Джава людям и правда нельзя такие задания на интервью давать ...
Я ведь не из вредности ее спросил, а так - чиста разговор поддержать. Потому что на вопросы коллеги она тоже толком не ответила.
От дамы мы никакаго кода не дождались. После туалета она повторила "злые вы, уйду я от вас", только нам обоим и на английском.