31如何权衡是使用无序的数组还是有序的数组?

237 阅读1分钟

笔记

查询比插入多,用有序数组,插入O(n),查询O(logn)

插入比查询多,用无序数组,插入O(1),查询O(n)

原文

有序数组最大的好处在于查找的时间复杂度是O(log n),而无序数组是O(n)。有序数组的缺点是插入操作的时间复杂度是O(n),因为值大的元素需要往后移动来给新元素腾位置。相反,无序数组的插入时间复杂度是常量O(1)。

[https://www.nowcoder.com/questionTerminal/9ed3967e65734c14b4a5d613b8ca718f](https://www.nowcoder.com/questionTerminal/9ed3967e65734c14b4a5d613b8ca718f)