avva: (moose)
[personal profile] avva
Цитирую из подзамочной записи с разрешения автора, который работает в американской компании и интервьюирует программистов:
Интесная закономерность выявляется. Мы начинаем интервью с того, что просим кандидата прочитать вот такой код, и сказать, что он делает. Как бы он назвал эту функцию?

private static int ok(int a, int b) {
   while (a >= b) a -= b;
   return a;
}

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

Date: 2013-05-13 05:23 pm (UTC)
From: [identity profile] blacklion.livejournal.com
А как, кстати? Я вот, кажется, чего-то не вижу. Через сравнение на равенство? Т.е. сначала пробежать по и поискать нет ли где-то равенства, и если есть, то это пересечение?
Я вот не помню, гарантирует ли нам стандарт хотя бы сравнение на равенство двух произвольных указателей...

Date: 2013-05-13 05:25 pm (UTC)
From: [identity profile] cmm.livejournal.com
я бы на месте стандарта не гарантировал, но проверять лень.
представьте себе, например, сегментированную архитектуру с перекрывающимися сегментами.

Date: 2013-05-13 05:26 pm (UTC)
From: [identity profile] blacklion.livejournal.com
Вот-вот, и я именно об этом. Поэтому я не вижу способа написать правильный memmove(), который будет работать на любой архитектуре.

Date: 2013-05-13 06:13 pm (UTC)
From: [identity profile] huzhepidarasa.livejournal.com
Да, гарантирует, даже на сегментированной архитектуре, иначе было бы совсем-совсем тошно.

"If two pointers point to the same object or function, they compare equal".

Date: 2013-05-13 06:14 pm (UTC)
From: [identity profile] blacklion.livejournal.com
Ну, тогда понятно, как это сделать правильно. Хотя, конечно, никто так не делает.

June 2025

S M T W T F S
123 4 5 6 7
8 910 11 12 13 14
15 16 17 1819 20 21
22 23 24 25 26 27 28
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 29th, 2025 09:17 am
Powered by Dreamwidth Studios