在读取数组时读取然后排序或排序是否更快?

时间:2013-03-04 10:24:12

标签: performance algorithm sorting pascal

我在Pascal编程。

读取数组,然后对它进行排序(使用,比方说,快速排序)或在阅读时对其进行排序是否更快?我不再需要未排序的数组,因此我可以在读取数组时更改数组的顺序。

3 个答案:

答案 0 :(得分:1)

最后对整个数组进行排序应该是默认选择。

通过在阅读时逐步对数组进行排序,您绝对不会获得任何结果。然而,你失去的是为工作选择最佳排序算法的灵活性。

答案 1 :(得分:0)

请参阅:Average time complexity of quicksort vs insertion sort

好像你在阅读时进行排序它将是插入排序问题,哪种排序更快。

读取只需要o(n)时间,然后比排序复杂度(O(nlogn)更短,从而使读数无关紧要

答案 2 :(得分:0)

读取整个数组,然后对其进行排序。否则,您将需要使用堆来在阅读期间将其保持在排序结构中或任何其他需要更多空间和结构的结构中。时间。