javascript - What's the time complexity of array.splice() in Google Chrome? -


if remove 1 element array using splice() so:

arr.splice(i, 1); 

will o(n) in worst case because shifts elements after i? or constant time, linked list magic underneath?

worst case should o(n) (copying n-1 elements new array).

a linked list o(1) single deletion.

for interested i've made lazily-crafted benchmark. (please don't run on windows xp/vista). as can see though, looks constant (i.e. o(1)), knows they're doing behind scenes make crazy-fast. note regardless, actual splice fast.

rerunning extended benchmark directly in v8 shell suggest o(n). note though need huge array sizes runtime that's affect code. should expected if @ v8 code uses memmove create new array.


Comments

Popular posts from this blog

c# - How to set Z index when using WPF DrawingContext? -

razor - Is this a bug in WebMatrix PageData? -

android - layout with fragment and framelayout replaced by another fragment and framelayout -