Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Интересное задание codewars.com (https://javascript.ru/forum/misc/73461-interesnoe-zadanie-codewars-com.html)

j0hnik 04.08.2018 12:41

рони,
https://jsperf.com/453543534sdasad

Aetae 04.08.2018 13:32

function fn(arr){
  var obj = Object.create(null), i = arr.length, max = 0;
  while(i--){
    if(arr[i] > max){
      while(++max < arr[i])
        obj[max] = true;
    }else{
      delete obj[arr[i]];
    }
  }
  return Object.keys(obj);
}

рони 04.08.2018 15:04

Цитата:

Сообщение от j0hnik
ваше решение будет стабильно проходить

чем c = [] не устроило?

j0hnik 04.08.2018 17:16

рони,
не меня, там проверка, вот ее и не устраивало. чем не могу сказать

рони 04.08.2018 17:22

Цитата:

Сообщение от j0hnik
чем не могу сказать

видимо причина в том, что
Цитата:

Сообщение от Malleys
массив меняет свой размер (меняются внутренние свойства, что приводит к очень долгому вычислению и изменению внутреннего состояния массива)


Alexandroppolus 04.08.2018 17:24

https://javascript.ru/forum/misc/734...tml#post483544 - кто-нибудь пробовал решить? :)

рони 04.08.2018 17:38

Цитата:

Сообщение от Alexandroppolus
кто-нибудь пробовал решить?

попробую :)

рони 04.08.2018 18:48

Alexandroppolus,
не получилось.

Ermite 04.08.2018 19:58

Такое предлагал кто-нибудь?)
14 символов вместе с ;
reverse = a => a.sort(()=>1); 

console.log(reverse(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9']));
console.log(reverse(['as', 'df', 'vv', 'ww', 'we']));

j0hnik 04.08.2018 20:02

Ermite,
в хроме не работает такое решение


Часовой пояс GMT +3, время: 22:47.