使排序后，选择操作也需要 O(n)，这是由于缺乏随机访问造成的。通常的，排序需要耗费 O("n" log "n") 的时间，其中 "n" 是列表的长度，尽管对于非比较算法而言可能更低一些，如基数排序和计数排序。相比将整个列表或数组进行排序，还可以用偏排序来选择第 "k" 小或第 "k" 大的元素。第 "k" 小的（第 "k" 大的) 也就是偏排序后列表中最大的 (最小的) 那个 – 这在数组中会耗费 O(1) 来访问，在链表中会耗费 O("k")。