Времева сложност за Javascript методи във V8

Знам, че стандартът на Javascript не посочва необходимата времева сложност за методи като array unshift, но има ли справка за времева сложност в конкретен Javascript двигател като V8?


person Chris Redford    schedule 25.03.2013    source източник


Отговори (2)


има ли препратка към сложността на времето в конкретен двигател на Javascript като V8?

No.

Спецификацията на ECMA не определя ограничаваща сложност, както може би вече знаете, нито този двигател. Всеки JavaScript двигател е свободен да внедрява собствена функционалност, стига да е съвместим със стандарта.

V8, например, не предоставя Time Complexities за своите методи.

Разбира се, бихте могли да погледнете изходния код, да конструирате алгоритъма, използван под капака в нашия ум, да го разберете, анализирате и след това да излезете с граница за неговата времева сложност.

person gsamaras    schedule 26.09.2017

Виж това.

Мутационни методи.

  1. push() - 0(1)
  2. pop() - 0(1)
  3. shift() - 0(n)
  4. unshift() - 0(n)
  5. splice() - 0(n)
  6. sort() - 0(n log(n))

Методи за достъп

  1. concat() - 0(n)
  2. slice() - 0(n)
  3. indexOf() - 0(n)

Итерационни методи

  1. forEach() - 0(n)
  2. map() - 0(n)
  3. filter() - 0(n)
  4. намали() - 0(n)
person Ankit Kumar Rajpoot    schedule 05.02.2021