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

I>Забыл, как думать?


Утверждал в резюме, что знает tensorflow. Надо было по data mining поспрашивать, но я испугался проявить невежество в том вопросе.
Re[4]: Зачем просят перевернуть строку на интервью?
От: landerhigh Пират  
Дата: 10.10.18 20:13
Оценка: -1 :)
Здравствуйте, Nuzhny, Вы писали:

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


Ну давай, расскажи, как ты перевернешь строку без выделения новой памяти, которая была засунута в RO сегмент микроконтроллера в целях экономии оперативной памяти :trollface:
www.blinnov.com
Re[3]: Зачем просят перевернуть строку на интервью?
От: Muxa  
Дата: 10.10.18 21:08
Оценка: +4 :)))
Тё>РашнФелоу, если Вы это не с гугла сейчас утащили, а по памяти- вы 100% ответили на мой коварный вопрос!
Он не умеет гуглить.
Re[5]: Зачем просят перевернуть строку на интервью?
От: CreatorCray  
Дата: 10.10.18 21:27
Оценка: +2
Здравствуйте, landerhigh, Вы писали:

L>Ну давай, расскажи, как ты перевернешь строку без выделения новой памяти, которая была засунута в RO сегмент микроконтроллера в целях экономии оперативной памяти :trollface:

Куда то тебя понесло уж очень вдаль...
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[11]: Зачем просят перевернуть строку на интервью?
От: CreatorCray  
Дата: 10.10.18 21:27
Оценка:
Здравствуйте, Тёмчик, Вы писали:

Тё>Ну зачем итераторы C++ пихать?

А почему нет? Итератор это всего то абстракция. Если девелопер не способен её понять — у меня для него плохие новости.

Тё>Но блин, в моей вселенной никому не нужен C++.

Restrictions надо оговаривать отдельно а главное заранее.

Тё> Так почему бы не выпендриваться и не сделать с массивом и индексами.

Лично я увидев в этой задаче индексы даже на С засчитал бы как небольшой минус и попросил бы переписать решение так, чтобы от индексов избавиться.
Из моего опыта — любители индексов в массе пишут спагетти код.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[3]: Зачем просят перевернуть строку на интервью?
От: CreatorCray  
Дата: 10.10.18 21:27
Оценка: 8 (1) +1
Здравствуйте, Тёмчик, Вы писали:

Тё>Мастер в компьютер саенс в европейском университете, говорит связно, на вид неглупый. Как такое может быть, я хз.

Ха! Таких на самом деле валом.
Это кодер, самостоятельно вести разработку не способен, инженерное мышление не развито — умеет только складывать из кубиков.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[2]: Зачем просят перевернуть строку на интервью?
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 10.10.18 21:40
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Что за язык? На Java такое без хаков не сделать.


Строка — это не обязательно класс String.
Ce n'est que pour vous dire ce que je vous dis.
Re[6]: Зачем просят перевернуть строку на интервью?
От: landerhigh Пират  
Дата: 10.10.18 21:45
Оценка:
Здравствуйте, CreatorCray, Вы писали:

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


L>>Ну давай, расскажи, как ты перевернешь строку без выделения новой памяти, которая была засунута в RO сегмент микроконтроллера в целях экономии оперативной памяти :trollface:

CC>Куда то тебя понесло уж очень вдаль...

Почему вдаль? Вполне рядовая ситуация. Я имею в виду строку в RO, а не необходимость ее переворота.
www.blinnov.com
Re[3]: Зачем просят перевернуть строку на интервью?
От: vsb Казахстан  
Дата: 10.10.18 22:03
Оценка: +2 -1 :))
Здравствуйте, Don Reba, Вы писали:

vsb>>Что за язык? На Java такое без хаков не сделать.


DR>Строка — это не обязательно класс String.


Обязательно.
Re[12]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 10.10.18 22:24
Оценка:
Здравствуйте, CreatorCray, Вы писали:

Тё>>Ну зачем итераторы C++ пихать?

CC>А почему нет? Итератор это всего то абстракция. Если девелопер не способен её понять — у меня для него плохие новости.

Тё>>Но блин, в моей вселенной никому не нужен C++.

CC>Restrictions надо оговаривать отдельно а главное заранее.
Ок. Если правильно написал сигнатуру функции с итераторами, и продемонстрировал алгоритм + swap ручками (а без временной переменной ещё лучше), и показал, как скормишь туда массив символов- я засчитаю. Даже если у нас искали со знанием ts и java. У меня ещё в очереди вопросы поинтересней.

Тё>> Так почему бы не выпендриваться и не сделать с массивом и индексами.

CC>Лично я увидев в этой задаче индексы даже на С засчитал бы как небольшой минус и попросил бы переписать решение так, чтобы от индексов избавиться.
Почему минус? Один тест на одну способность. Хочешь проверить знание арифметики указателей- делай отдельный тест.

CC>Из моего опыта — любители индексов в массе пишут спагетти код.

Ты как-то предвзято относишься. Зачем так.
Re[3]: Зачем просят перевернуть строку на интервью?
От: 0xCAFEDEAD  
Дата: 11.10.18 00:24
Оценка: +1
Здравствуйте, CreatorCray, Вы писали:

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


K>>Во многих языках/платформах строки иммутабельные. В частности, в Java, .NET, Python... В них нельзя перевернуть строку по месту.

CC>Варианта 2:
CC>1. Выбери другой язык
CC>2. Переворачивай не строку а массив символов

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

CC>Любопытным отвечают что по условиям задачи строка ASCII. Задача не про это.

Абсолютно верно. Это типичная задача для отсева непрограмиистов. Следующая обычно — разворот списка. На тех, кто не справился — просто нет смысла тратить время. Они не умеют программировать. Можно сделать небольшие подсказки, уточнения в процессе решения. Скидку на волнение, но в целом это маст хэв, так сказать.
Re[3]: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 11.10.18 00:32
Оценка:
CC>Ты теряешь главный нюанс этого вопроса: просят написать алгоритм, который собственно переворачивание будет делать полностью сам.
CC>Язык и правда не важен, встроенные переворачиваторы в решении использовать нельзя.

Вот именно эти детали и должны быть уточнены: 1) пишем алгоритм, а не функцию на конкретном языке программирования, 2) строка изменяемая с доступом к символам по индексу, 3) есть функция вычисления длины строки, работающая без дополнительной памяти. Не во всех языках программирования и ситуациях эти условия выполняются.
Re[4]: Зачем просят перевернуть строку на интервью?
От: VVV Россия  
Дата: 11.10.18 00:34
Оценка:
Здравствуйте, LaptevVV, Вы писали:

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

LVV>>>рассматривается этот алгоритм.
LVV>>>И приводится удивительно элегантное рекурсивное решение.
Тё>>Зачем там рекурсия?
LVV>Прошу пардону.
LVV>Там реверс строки используется для реализации циклического сдвига строки на n позиций за О(n).

Знаю как не рекурсивно (и очень элегантно) : http://rsdn.org/forum/other/124244.1
Автор: VVV
Дата: 01.11.02


А как рекурсивно?
Re[4]: Зачем просят перевернуть строку на интервью?
От: 0xCAFEDEAD  
Дата: 11.10.18 00:43
Оценка:
Здравствуйте, De-Bill, Вы писали:

CC>>Ты теряешь главный нюанс этого вопроса: просят написать алгоритм, который собственно переворачивание будет делать полностью сам.

CC>>Язык и правда не важен, встроенные переворачиваторы в решении использовать нельзя.

DB>Вот именно эти детали и должны быть уточнены: 1) пишем алгоритм, а не функцию на конкретном языке программирования, 2) строка изменяемая с доступом к символам по индексу, 3) есть функция вычисления длины строки, работающая без дополнительной памяти. Не во всех языках программирования и ситуациях эти условия выполняются.


Угу, ты еще стоимость рандомного доступа по индеску обсуди. Может только итератор можно. Кто знает, какая там память.

А вообще не надо выдумавать проблем, там где их нет. Никто на собесе никого не хочет завалить, нет смысла придираться. Это же не форум на рсдн.
Re: Зачем просят перевернуть строку на интервью?
От: mgu  
Дата: 11.10.18 01:16
Оценка: +1 :))
Здравствуйте, Тёмчик, Вы писали:

Тё>Зачем просят перевернуть строку на интервью?


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

А если серьёзно, то это первое, что нашлось в интернетах с готовым ответом. Как-то ни разу не сталкивался с вариациями, например, поменять левую часть строки с правой.
Re[2]: Зачем просят перевернуть строку на интервью?
От: mgu  
Дата: 11.10.18 01:19
Оценка:
Здравствуйте, qxWork, Вы писали:

W>Идиотен тест.


Для интервьюеров или для соискателя?
Re[13]: Зачем просят перевернуть строку на интервью?
От: CreatorCray  
Дата: 11.10.18 01:21
Оценка:
Здравствуйте, Тёмчик, Вы писали:

CC>>Из моего опыта — любители индексов в массе пишут спагетти код.

Тё>Ты как-то предвзято относишься. Зачем так.
Потому что опыт.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[5]: Зачем просят перевернуть строку на интервью?
От: Тёмчик Австралия жж
Дата: 11.10.18 01:34
Оценка:
Здравствуйте, VVV, Вы писали:

LVV>>Там реверс строки используется для реализации циклического сдвига строки на n позиций за О(n).


VVV>Знаю как не рекурсивно (и очень элегантно) : http://rsdn.org/forum/other/124244.1
Автор: VVV
Дата: 01.11.02

Там в коде ошибка.

VVV>А как рекурсивно?

Вместо for-loop впихнуть tail recursion. Imho это изврат- но возможно, для проверки умения кандидата в рекурсию подойдёт, хотя лучше эту проверку отдельной простой задачей сделать.
Re[5]: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 11.10.18 01:36
Оценка:
CAF>А вообще не надо выдумавать проблем, там где их нет. Никто на собесе никого не хочет завалить, нет смысла придираться.

При собеседовании у Тёмки, возможно. Но я знаю вполне конкретные конторы (так как там мои знакомые собеседуют), где за решение задачи без уточнения условий (вопросов со стороны соискателя) будет серьёзный минус.
Re[3]: Зачем просят перевернуть строку на интервью?
От: De-Bill  
Дата: 11.10.18 01:40
Оценка:
CC>По условиям задачи на собеседованиях надо как раз in-place.

Начнём с того, что условие in-place Артёмка приписал уже после моего ответа.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.