这个名字真的说明了一切。我怀疑插入排序是最好的,因为它通常是大多数排序数据的最佳排序。但是,由于我对数据了解得更多,因此有可能还有其他类型的数据值得关注。所以其他相关的信息是:
1)这是时间数据,这意味着我推测可以为数据排序创建一个有效的散列。2)数据不会同时存在。相反,我将阅读可能包含单个向量或十几个或数百个向量的记录。我想在 5 秒的窗口内输出所有时间。因此,在我插入数据时进行排序的排序可能是一个更好的选择。3)内存不是大问题,但CPU速度是因为这可能是系统的瓶颈。
鉴于这些条件,除了插入排序之外,任何人都可以提出一种可能值得考虑的算法吗?另外,如何定义“大部分排序”来决定什么是好的排序选项?我的意思是我如何查看我的数据并决定'这不像我想象的那样排序,也许插入排序不再是最好的选择'?任何链接到考虑了过程复杂性的文章,该文章更好地定义了相对于学位数据的复杂性,都将被排序。
谢谢
编辑:谢谢大家的信息。我现在将使用简单的插入或合并排序(无论我已经预先编写过哪个)。但是,一旦接近优化阶段,我将尝试其他一些方法(因为它们需要更多的努力来实现)。我很感激帮助