
Александр
12.07.2017
13:56:03
не

ed
12.07.2017
13:56:09
ну ладно)

Александр
12.07.2017
13:56:48
подобная задания и предполагает вспомнить сишечку и её подходы

Stepan
12.07.2017
13:57:52

Google

Pavel
12.07.2017
13:57:55

Stepan
12.07.2017
13:58:22
Да, это говнокод, но зато в три строки))00

ed
12.07.2017
13:59:15
вот я тоже пытался делать с промежуточным массивом но говорили нельзя

Ivan
12.07.2017
13:59:19
https://twitter.com/turbojedi/status/885131741849112576

Александр
12.07.2017
14:01:33

shadowjack
12.07.2017
14:02:53
const moveZeros = list => {
const {arr, zCount} = list.reduce(
({arr, zCount}, el) => el !== 0
? {arr: [...arr, el], zCount}
: {arr, zCount: zCount+1},
{arr: [], zCount: 0}
);
return arr.concat(Array(zCount).fill(0));
}
console.log(moveZeros([0,1,4,0,0,0,2,2,2,2,2,0,0,10]))
Ну и если все элементы > 5 то тоже тривиально по тому же принципу.

ed
12.07.2017
14:03:38
мне кажется этот вариант по памяти делает совсем не то, чего хотелось бы
мне даже splice говорили нельзя заюзать
куда там concat)
и пр

Dmitry ?
12.07.2017
14:04:21
Единственное тут честное решение за О(n) с О(1) доп памяти ?

shadowjack
12.07.2017
14:04:36
splice зло конечно же.

Google

Александр
12.07.2017
14:04:37
const moveZeros = list => {
const {arr, zCount} = list.reduce(
({arr, zCount}, el) => el !== 0
? {arr: [...arr, el], zCount}
: {arr, zCount: zCount+1},
{arr: [], zCount: 0}
);
return arr.concat(Array(zCount).fill(0));
}
console.log(moveZeros([0,1,4,0,0,0,2,2,2,2,2,0,0,10]))
zCount = list.length - arr.length;

shadowjack
12.07.2017
14:05:31
В данном случае конечно да. Но не функционально.

ed
12.07.2017
14:06:29

shadowjack
12.07.2017
14:06:34
Можно подумать кто-то на js обрабатывает списки с миллионами элементов, чтобы о памяти беспокоиться.

ed
12.07.2017
14:06:39
в моем случае я пришел примерно к этому
у нас такое есть в проекте, не миллион, но 100к запросто)

Сергей
12.07.2017
14:07:09

Evjeni
12.07.2017
14:08:09
Господа, насколько у вас большой стор в ваших приложениях?

Dmitry
12.07.2017
14:10:56

Pavel
12.07.2017
14:11:19

Ivan
12.07.2017
14:11:57

Stepan
12.07.2017
14:12:03
за что без пробелов-то(((

Сергей
12.07.2017
14:12:08

ed
12.07.2017
14:12:44
итак буков много, пробелы убрал для скрина)

Александр
12.07.2017
14:12:55

Dmitry ?
12.07.2017
14:13:16

Evjeni
12.07.2017
14:13:23

Yung
12.07.2017
14:13:33

Сергей
12.07.2017
14:14:09

Google

Pavel
12.07.2017
14:14:27

ed
12.07.2017
14:15:04
не могу сказать название конторы, но её все знают, и думаю многие тут мечтают туда попасть)
так то, топовые компании, вы не понимаете ничег)

Сергей
12.07.2017
14:16:07

Yung
12.07.2017
14:16:31
Яндекс наверняка кокой-то, лол
(Не мечтаем)

ed
12.07.2017
14:17:05
почти попали но направление верное

Pavel
12.07.2017
14:17:08
Стопудово Яндекс

ed
12.07.2017
14:17:19
да то, что офис в рашке конечно дает свой осадочек

Sergey
12.07.2017
14:17:32
200 сообщений за 30мин. Вы вообще работу работает?) или вы в чате реакта работает?)

Admin
ERROR: S client not available

ed
12.07.2017
14:17:44
у меня баг в проекте на продакшене, ща деплоить буду

ed
12.07.2017
14:17:58
несколько дней висит, бабло считается не так как надо)

Alexander
12.07.2017
14:19:07
Мыло ру?
слышал там о багах в облаке для корпов
как раз с подсчетом цен

Сергей
12.07.2017
14:19:42

Evjeni
12.07.2017
14:19:52
тебе в гб или тб?
а вообще мне в виде дерева, хочу знать насколько можно делать его большим

Сергей
12.07.2017
14:20:00

Google

Evjeni
12.07.2017
14:20:38

Сергей
12.07.2017
14:20:45
Мыло ру?
Если выбирать между Мылом и Яндексом, я бы пошел в стартап

Alexander
12.07.2017
14:20:59
в мыле пиздец

Yung
12.07.2017
14:21:03

Alexander
12.07.2017
14:21:08
типа офис, дмс и плюшки только ок
зп в стартапе у кого как
смотря сколько бабок на проект выделяют

shadowjack
12.07.2017
14:21:45
Вот вам императивное решение: const moveZeros = list => {
let i = 0;
let j = 0;
let n = list.length;
for(i = 0; i < n; i++)
if(list[i] !== 0)
list[j++] = list[i];
for(i = j ; i < n; i++)
list[i] = 0;
return list
}
console.log(moveZeros([0,1,4,0,0,0,2,2,2,2,2,0,0,10]))

Alexander
12.07.2017
14:21:45
работа через жопу как и везде в принципе в более-менее больших компаниях

Дмитрий
12.07.2017
14:21:46

shadowjack
12.07.2017
14:22:12
const n конечно должно быть.

Mike
12.07.2017
14:23:23
Он редко нужен