哪种排序可以有效地将数据从升序排序到降序?

Din*_*esh 2 c sorting data-structures

我想使用C实现对一组数据进行排序.我想知道哪种排序是有效的,时间复杂度最好的情况.请注意,数据仅按升序排列.我想按降序排序.哪一个效率更高,效率最低,为什么?任何人都可以解释它吗?

Con*_*ius 9

在这种特定情况下,您不必使用排序算法.例如,您可以将ith元素与n - ith元素交换:

for(i = 0; i < size/2; ++i)
{
    tmp = arr[i];
    arr[i] = arr[size - 1 - i];
    arr[size - 1 - i] = tmp;
}
Run Code Online (Sandbox Code Playgroud)

这一直是复杂的O(n/2).我不认为有更快的方法.当然,只是在另一个方向阅读数据.