Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 06:54
Оценка: +1 :))) :)
и сколько времени можно на это потратить у доски?

Условие было такое: строка «один два три». Написать функцию на доске, чтобы поменять порядок символов внутри этой строки, не выделяя новой памяти (кроме временных переменных). Принимается ли решение через 15 минут?
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Отредактировано 10.10.2018 8:38 Тёмчик . Предыдущая версия .
Re: Зачем просят перевернуть строку на интервью?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 10.10.18 07:14
Оценка: 10 (1) +3
Здравствуйте, Тёмчик, Вы писали:

Тё>и сколько времени можно на это потратить у доски?


Просто проверить, что человек может писать код. Кажется, что тест неплохой. Сколько потратить времени? Думаю, что это должно ограничиваться не обдумыванием задачи, а умением писать на доске. Пишешь быстро — времени тратишь мало.
https://elibrary.ru/author_counter.aspx?id=875549
Re: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 10.10.18 07:46
Оценка: :)
Тё>и сколько времени можно на это потратить у доски?

Секунд 10 должно хватить:
s[::-1]

Не благодари.
Re[2]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 08:04
Оценка:
Здравствуйте, De-Bill, Вы писали:

Тё>>и сколько времени можно на это потратить у доски?


DB>Секунд 10 должно хватить:

DB>
DB>s[::-1]
DB>

DB>Не благодари.

без выделения новой строки
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Re[2]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 08:06
Оценка: :)
Здравствуйте, Nuzhny, Вы писали:

N>Просто проверить, что человек может писать код. Кажется, что тест неплохой. Сколько потратить времени? Думаю, что это должно ограничиваться не обдумыванием задачи, а умением писать на доске. Пишешь быстро — времени тратишь мало.


А если очень давно учился, и забыл? Может быть такое?
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Re: Зачем просят перевернуть строку на интервью?
От: kaa.python Сингапур http://sysdev.me/
Дата: 10.10.18 08:09
Оценка: +2
Здравствуйте, Тёмчик, Вы писали:

Тё>и сколько времени можно на это потратить у доски?


Не надо её переворачивать, всегда можно взять rend().
Re[3]: Зачем просят перевернуть строку на интервью?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 10.10.18 08:11
Оценка: 1 (1) +6
Здравствуйте, Тёмчик, Вы писали:

Тё>А если очень давно учился, и забыл? Может быть такое?


Казалось бы, что ты мог забыть? Как итерироваться по строке? Как узнать её длину? Сам алгоритм-то помнить не надо, он разве не очевиден?
https://elibrary.ru/author_counter.aspx?id=875549
Re[2]: Зачем просят перевернуть строку на интервью?
От: Transformerrr  
Дата: 10.10.18 08:16
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Здравствуйте, Тёмчик, Вы писали:


Тё>>и сколько времени можно на это потратить у доски?


N>Просто проверить, что человек может писать код. Кажется, что тест неплохой. Сколько потратить времени? Думаю, что это должно ограничиваться не обдумыванием задачи, а умением писать на доске. Пишешь быстро — времени тратишь мало.


Бывает так,что человек может писать код, но не у доски. Со всякими collaborate тулзами то же самое.
Re: Зачем просят перевернуть строку на интервью?
От: kov_serg Россия  
Дата: 10.10.18 08:17
Оценка: 2 (1) +1 :))) :))) :))) :))) :)
Здравствуйте, Тёмчик, Вы писали:

Тё>и сколько времени можно на это потратить у доски?

Видимо есть причины.
https://www.yaplakal.com/forum7/topic1825236.html

— Здравствуйте!
— Да, привет. Заходи.
— Я на собеседование…
— Подними правую руку.
— Что?
— Руку правую подними.

Я замялся и неуверенно поднял правую руку вверх.
— Отлично! — сказал мужчина.

Я опустил руку.

— Садись.
— Я сел на один из двух стульев напротив стола.
— Ничего, что я так говорю?
— Как?
— Ну «садись»? А то перед тобой тут был один. Рассказывал мне, чем отличается сесть от присесть. Я его на хуй послал. А по телефону говорил, что не долбоёб. Или это ты говорил?
— Может, и я. Почему-то часто спрашивают.
— Угу! — мужчина продолжил читать бумагу. — Скажи мне, какое, на твой взгляд, главное профессиональное качество автослесаря?
Нужно было что-то ответить, я терялся.
— Я думаю, главное качество автослесаря — разбираться в машинах.
— Да, но нет. Я думаю, одним из главных качеств или даже умений для автослесаря является способность отличать право от лева!
Я внимательно слушал.

— Вот сейчас передо мной лежит претензия от клиента. Хорошего клиента, денежного. Он жаловался на гул во время езды. Мы нашли причину, заказали подшипник, четыре дня этот подшипник к нам ехал-ехал, и вот когда его поменяли — гул не пропал. Знаешь, почему?
— Почему?
— Потому что слесарь, который эту машину делал, почему-то поменял правый подшипник вместо левого. В бумаге было написано «ЛЕВЫЙ». Читать он умеет, я проверял. А вот разницу между правой стороной и левой не знал. Двадцать четыре года долбоёбу! На двадцать пятом году слесарь Иванов сделал открытие.

Re[4]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 08:31
Оценка: :)
Здравствуйте, Nuzhny, Вы писали:

N>Казалось бы, что ты мог забыть? Как итерироваться по строке? Как узнать её длину? Сам алгоритм-то помнить не надо, он разве не очевиден?


У меня порвало все шаблоны.
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Re: Зачем просят перевернуть строку на интервью?
От: Amygdala Россия  
Дата: 10.10.18 08:39
Оценка: +1 :)))
Здравствуйте, Тёмчик, Вы писали:

А что надо просить? Отжаться 50 раз?
Re: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 10.10.18 08:42
Оценка: -4
Тё>и сколько времени можно на это потратить у доски?

Надо сказать, вопрос вообще говно, если привязываться к языку программирования.
Для некоторых языков он не проверяет ничего (Питон, например). Для некоторых языков написать на доске нормальное решение практически невозможно. Например C#:
public static string Reverse( string s )
{
    char[] charArray = s.ToCharArray();
    Array.Reverse( charArray );
    return new string( charArray );
}

Я, блин, ToCharArray и Array.Reverse использую раз в 10 лет. Для некоторых языков может начаться мрак из-за кодировок. В-общем, если собеседующий захочет докапаться, то он сможет это сделать.
Re: Зачем просят перевернуть строку на интервью?
От: LaptevVV Россия  
Дата: 10.10.18 08:44
Оценка:
В книге Бентли "Жемчужины программирования" в разделе 2.3 Мощь элементарного на странице 32-33
рассматривается этот алгоритм.
И приводится удивительно элегантное рекурсивное решение.
Кен Томпсон использовал этот вариант в 1971 году, и говорил, что уже тогда эта функция была легендарной.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Зачем просят перевернуть строку на интервью?
От: reversecode google
Дата: 10.10.18 08:44
Оценка: 6 (1) +1 :))
чудовищно точно подмечено! все именно так же и в ИТ
главное уметь проходить собеседования! а программировать потом научитесь
Re[5]: Зачем просят перевернуть строку на интервью?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 10.10.18 08:45
Оценка: +2
Здравствуйте, Тёмчик, Вы писали:

N>>Казалось бы, что ты мог забыть? Как итерироваться по строке? Как узнать её длину? Сам алгоритм-то помнить не надо, он разве не очевиден?

Тё>У меня порвало все шаблоны.

Блин, как же ты работаешь, если от такого простого вопроса у тебя рвёт шаблоны?
https://elibrary.ru/author_counter.aspx?id=875549
Re[2]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 08:46
Оценка:
Здравствуйте, De-Bill, Вы писали:

Тё>>и сколько времени можно на это потратить у доски?


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

DB>Для некоторых языков он не проверяет ничего (Питон, например). Для некоторых языков написать на доске нормальное решение практически невозможно. Например C#:
DB>
DB>public static string Reverse( string s )
DB>{
DB>    char[] charArray = s.ToCharArray();
DB>    Array.Reverse( charArray );
DB>    return new string( charArray );
DB>}
DB>

DB>Я, блин, ToCharArray и Array.Reverse использую раз в 10 лет. Для некоторых языков может начаться мрак из-за кодировок. В-общем, если собеседующий захочет докапаться, то он сможет это сделать.

Сколько времени нужно, чтобы написать реализацию Array.reverse() из этого примера?
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Re[3]: Зачем просят перевернуть строку на интервью?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 10.10.18 08:49
Оценка: +1
Здравствуйте, Transformerrr, Вы писали:

T>Бывает так,что человек может писать код, но не у доски. Со всякими collaborate тулзами то же самое.


Ну, для меня это звучит странно. На досках и листочках пишу код постоянно, когда что-то обсуждаю с коллегами: схематично, не весь синтаксис расписываю, но всё равно пишем. И схемы, и графы всякие. что тут такого? У доски в школе учат отвечать и писать на ней, в вузе тоже. Неужели эти вещи вдруг стали какими-то заоблачными? Мы же говорим не о каком-то сложном коде, а о маленькой функции по инверсии строки. Понятно, что код в реальных проектах сложнее, больше и с кучей зависимостей, для этого тулзы и делают. Но тут!
https://elibrary.ru/author_counter.aspx?id=875549
Re[2]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 08:53
Оценка: +1 :)
Здравствуйте, LaptevVV, Вы писали:

LVV>В книге Бентли "Жемчужины программирования" в разделе 2.3 Мощь элементарного на странице 32-33

LVV>рассматривается этот алгоритм.
LVV>И приводится удивительно элегантное рекурсивное решение.

Зачем там рекурсия?
LIVE camera in Dee Why: http://www.coastalwatch.com/surf-cams-surf-reports/nsw/dee-why
Re[3]: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 10.10.18 09:04
Оценка:
Тё>Сколько времени нужно, чтобы написать реализацию Array.reverse() из этого примера?

Пару минут должно хватить. Но это уже другая задача. В отличие от строк практически во всех языках нам: 1) известна его длина в элементах, 2) по индексу есть доступ к каждому элементу, 3) массив изменяемый.
Re[3]: Зачем просят перевернуть строку на интервью?
От: Vlad_SP  
Дата: 10.10.18 09:07
Оценка: +1
Здравствуйте, Тёмчик,

Тё>Зачем там рекурсия?


Для элегантности же!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.