什么是更快:排序n个元素,或在正确的位置逐个插入n个元素?

Kut*_*ach 1 sorting algorithm

通常,更好的是:在某些集合中插入N个元素然后对其进行排序,或者在插入之前找到元素的正确位置并将其精确插入该位置(重复N次)?

ami*_*mit 6

它非常依赖于使用中的数据结构和应用程序.

请注意,在数组中插入元素需要将所有后续元素向右移动,这会导致O(n)插入.
二叉搜索树然而,允许插入O(logn),但小于高速缓存效率然后阵列-并且因此速度较慢.

另一方面,在插入最后一个元素[ 排序] 之后,插入然后排序会导致高延迟O(nlogn).
此外 - 如果您要经常查询 - 但很少添加元素 - 您希望避免过于频繁地排序 - 并且按顺序保持元素是实现此目的的简单方法.