最快的安全排序算法实现

最快的安全排序算法实现,第1张

最快的安全排序算法实现

有谁知道如何更快地实现我的算法?

通过将代码转换为使用指针,我能够节省10%的执行时间。

    public unsafe static void UnsafeQuickSort(int[] data)    {        fixed (int* pdata = data)        { UnsafeQuickSortRecursive(pdata, 0, data.Length - 1);        }    }    private unsafe static void UnsafeQuickSortRecursive(int* data, int left, int right)    {        int i = left - 1;        int j = right;        while (true)        { int d = data[left]; do i++; while (data[i] < d); do j--; while (data[j] > d); if (i < j) {     int tmp = data[i];     data[i] = data[j];     data[j] = tmp; } else {     if (left < j) UnsafeQuickSortRecursive(data, left, j);     if (++j < right) UnsafeQuickSortRecursive(data, j, right);     return; }        }    }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5646511.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存