
Aler
14.06.2017
17:20:12
кстати, вариант Геллиона почти 100% будет быстрее чем output += input[tail]

Roman
14.06.2017
17:21:14
и кстати думаю ячто реверс есть и в js и c# и даже в свифте

MaxCos
14.06.2017
17:21:54

Roman
14.06.2017
17:21:55
и в пхп

Google

Roman
14.06.2017
17:22:35
чисто чтобы знания показать? так я их имхо и так показал. 1 строкой

MaxCos
14.06.2017
17:23:05
а вот нах?
Вот такое задание задал ХР деревянному джуну.

Roman
14.06.2017
17:24:38

MaxCos
14.06.2017
17:25:59
Вообще в руби можно сделать так и комплит.
puts "Где пицца?".reverse

Roman
14.06.2017
17:26:21

Aler
14.06.2017
17:26:22

Eugene
14.06.2017
17:26:24
любят эти программисты все усложнять..

Aler
14.06.2017
17:26:42
использовать .reverse хорошо, но понимать как работать со строками нужно

Roman
14.06.2017
17:26:47
когда есть решение проще, хр вероятнее ждет именного этого решения, а не горождения непонятно чего

Aler
14.06.2017
17:27:00
и судя по чату половина вообще не понимает как их код работает

Снобяъ
14.06.2017
17:27:03
Да это собеседование

Aler
14.06.2017
17:27:28
Просто развернуть строку это базовые навыки CS

Google

MaxCos
14.06.2017
17:28:06

Снобяъ
14.06.2017
17:28:40
Половина чата крутые спецы - спорят о реверсе

Aler
14.06.2017
17:29:12

Снобяъ
14.06.2017
17:29:20

Aler
14.06.2017
17:29:21
значит задача не такая простая
с чего это?
с того, что лучше бы ты просто сделал reverse

Михаил
14.06.2017
17:30:00

Aler
14.06.2017
17:30:08
твой вариант наиболее плохой из всех обсужденных

Снобяъ
14.06.2017
17:30:20
Смотри. Там было видео на проверку джуна. Он тоже втулил реверс, а потом ему пояснили ,что нужен его подход ,а не реверс

Aler
14.06.2017
17:30:36
твой подход не правильный

Снобяъ
14.06.2017
17:30:36
И если его подход работает, то уже вопросы про оптимизацию

Aler
14.06.2017
17:30:39
в корне

Снобяъ
14.06.2017
17:30:44
А какой правильный?)

Aler
14.06.2017
17:31:04
который мы обсуждали выше: билдер или указатель (если доступен в языке)

Снобяъ
14.06.2017
17:31:19
Похоже, что ты не смотрел того видео

Aler
14.06.2017
17:31:35
ну или альтернативный (хуже) с созданием массива символов и свапом через временный символ
я не смотрел, я эту задачу понимаю и без видео

Снобяъ
14.06.2017
17:32:48
Там вопрос был в другом. Не решить задачу в 1 строку ,а посмотреть на действия джуна.
Про билдер я забыл, но это никак не отменяет, того, что со стрингами метод работал
Скажу больше, я даже не знал, что билдер менее ресурсоемкий, нежели апендить строку

Aler
14.06.2017
17:33:30
а можно момент в видео?

Google

Aler
14.06.2017
17:33:35
хочу посмотреть где он это делал

Снобяъ
14.06.2017
17:33:57
Там в начале, когда еще экран с кодом пуст

MaxCos
14.06.2017
17:34:04
https://www.youtube.com/watch?v=YrXJzD2E6NU

Roman
14.06.2017
17:34:38
а кто такой этот РОР разработчик?
ааааа
бля
руби же

Михаил
14.06.2017
17:34:46

MaxCos
14.06.2017
17:36:46

Roman
14.06.2017
17:38:00
as3
новое решение метод
var string:String = "";
for (var i:int = String("long text").length; i > 0; i--) {
string += String("long text").charAt(i);
}

mardybm
14.06.2017
17:39:24
> string +=
☹️

Aler
14.06.2017
17:39:35
идеееальный пример
даже лучше Снобя

Roman
14.06.2017
17:39:46
серьезно?

Aler
14.06.2017
17:39:51
Просто шииидевр

Roman
14.06.2017
17:39:58
фууух

Aler
14.06.2017
17:40:04
я думал как сделать хуже, но не мог придумать))

Google

Roman
14.06.2017
17:40:06
а то я и в правду подумал что я молодец

Eugene
14.06.2017
17:40:14
такое ощкщение что сарказм
ах да

Aler
14.06.2017
17:40:51
ты мало того, что создаешь каждый проход цикла строку для конкатенации, так еще и создаешь строку, что присоединяется)
просто шидерв)
но вообще используйте .reverse и норм

Roman
14.06.2017
17:42:17
что? Алер где я там строку создаю?

Aler
14.06.2017
17:42:32
String("long text").charAt(i)
вот это выражение создает строку каждый раз

Roman
14.06.2017
17:42:52
String("long text") вот это вообще заменяется переменной которая приходит в функцию, но я так написал чтобы показать

Aler
14.06.2017
17:43:05
хотя они конечно из стека берутся и я понимаю, что ты просто не вынес в временную переменную)
но просто забавно)

Roman
14.06.2017
17:43:27

Aler
14.06.2017
17:43:37
логика

Eugene
14.06.2017
17:43:49
кто-нибудь может бенчмарки запилит/;0

Roman
14.06.2017
17:43:58
charAt () метод
AS3 function charAt(index:Number = 0):String
Возвращает символ в позиции, заданной параметром индекса. Если index не является числом от 0 до string.length - 1, возвращается пустая строка.
никаких новых строк не создается
не нужно выдумывать

Aler
14.06.2017
17:44:35
а String("Long text")?
но вообще, читаю специфику ас3, он при компиляции для конкатенации похоже сам аналог билдера создает

Google

Roman
14.06.2017
17:45:02
тоже

Aler
14.06.2017
17:45:11
так, что в ас3 можно делать resultString +=

Roman
14.06.2017
17:45:12
ибо там не new String

Снобяъ
14.06.2017
17:45:24
Это сеньеры выше?
Кык

MaxCos
14.06.2017
17:45:40
Попытка №2:
str = "Где пицца?"
str_length = str.length/2
str_length.times do |e|
str[e], str[-e-1] = str[-e-1], str[e]
end
puts str

Aler
14.06.2017
17:46:20
var str:String = new String("foo");
var str:String = "foo";
var str:String = String("foo");
абсолютно равнозначные вызовы

Roman
14.06.2017
17:46:41
да
если я СОЗДАЮ премененную
а там я не создаю
а просто говорю что "лалала" это текст

Aler
14.06.2017
17:47:22
оу...

Roman
14.06.2017
17:47:23
я могу и без стринга это сделать
просто написать "text".charAt(i)

Aler
14.06.2017
17:47:42
задача несудьбы))
мне кажется пройти собеседование на должность программиста нереально просто

mardybm
14.06.2017
17:48:14

Aler
14.06.2017
17:48:19
я начинаю понимать парней, что меня собеседируют

Roman
14.06.2017
17:48:34
for (var i:int = "long text".length; i >= 0; i--) {string += "long text".charAt(i);}

mardybm
14.06.2017
17:48:59

Roman
14.06.2017
17:49:04
output: txet gnol