对双精度的多个独立向量进行排序

Sort multiple independent vectors of double

本文关键字:向量 排序 独立 双精度      更新时间:2023-10-16

也许我有点不清楚:

我想做的是尽快对许多向量进行排序。例如,我有 200 个向量和 200 个双精度。

由于您尚未发布代码,因此我假设您正在寻找更好的代码优化以节省内存和时间。尝试在循环中使用标志。

for(i=1;x;i++)
{
    sort();
    if(flag)
       break;
}

"break"确保您在对数据进行排序后不会迭代不必要的代码,该标志告诉编译器在迭代完成时退出循环语句。在嵌套循环中使用标志更为重要,因为空间复杂度超过了 O(n.square),并且它要求提高效率。

这在大量迭代和内存空间中节省了大量时间。尝试尽可能优化您的代码,从长远来看会有很大的不同。

使用 Radix 排序可以加快排序速度。

Nvidia cuda/openCL SDK 中有一个 Radix 排序算法的并行实现。