Home > Mobile >  Javascript Array: what is a Big O of performing sort and then map right after on it?
Javascript Array: what is a Big O of performing sort and then map right after on it?

Time:10-29

arr.sort((a, b) => a - b).map(num => num ** 2);

What would be a Big O of the following operation?

As I understand Big O of imbedded sort function in JS is O(Nlog(N)) and Big O of map is O(N), therefore Big O is O(Nlog(N))?

CodePudding user response:

The complexity of your function f, for arr of size n. We'll assume:

arr.sortO(nlogn)
arr.mapO(n),

We can just sum these terms, since these operations are done serially (one after the other. Thus,

f(n) ∈ O(nlogn   n)

Note that the nlogn term will grow slowly, but eventually:

as n -> infinity, nlogn >> n
thus, as n -> infinity, nlogn   n -> nlogn

So we can simplify to just O(nlogn) for sufficiently large n.

All of this is to say, yep, you got it.

  • Related