如何选择正确的排序算法

时间:2016-03-17 23:19:51

标签: java sorting data-structures

由于我们有很多排序算法,我想为我的案例选择合适的排序算法。

对于Ex:插入排序最适合小型数字,而Merge排序最适合大型数字。

我不知道小范围的数字是什么意思.i.e 1-100或1-1000左右。

对于排序数字列表的最佳情况可能是什么,其中重复出现相同的数字集合。我打算将其存储在散列中,然后相应地存储元素。

通过哈希进行是否是更好的方法或使用某种排序算法是最好的方法

1 个答案:

答案 0 :(得分:0)

  

但是在这里它一次又一次地包含相同的数据

如果向已排序的数组(列表)添加一些元素,那么只有少量的反转。在这种情况下,插入排序将相当快速地工作。

备选方案 - 自然 merge sortTimSort(如果您的语言可以使用) - 这些方法在所有情况下都会表现良好,包括未排序的数组。