O(nlog(n)) O(1)