Javascript Concat время выполнения - PullRequest
4 голосов
/ 08 декабря 2011

Если у меня есть два массива по 10000 элементов, теперь я хочу объединить их в один массив, поэтому я делаю это с помощью concat:

 array1=array1.concat(array2);

а кто-нибудь знает, каково время бега? постоянная или N? Есть ли лучший способ объединить их с точки зрения скорости. спасибо за любые советы.

1 Ответ

5 голосов
/ 08 декабря 2011

Я сомневаюсь, что спецификация ECMAScript требует каких-либо больших требований к производительности для любых операций, поэтому она будет зависеть от реализации.Единственный способ проверить это написать эталонный тест и запустить его на ваших целевых интерпретаторах.

Тем не менее, я думаю, большинство интерпретаторов JavaScript реализуют массивы как массивы векторного типа, а не как связанные списки, поэтому concatоперация, вероятно, будет O(n) на большинстве двигателей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...