当前位置:  开发笔记 > 编程语言 > 正文

适用于不同场景下C#/ .NET的最佳排序算法

如何解决《适用于不同场景下C#/.NET的最佳排序算法》经验,为你挑选了2个好方法。

在C#中对数据进行排序的最佳算法是什么?

是否有一种排序算法可以很好地处理80%的排序?

如果适用,请提供代码示例.



1> CubanX..:

查看此站点: 排序与动画的比较

简答:快速排序

更长的答案:上面的网站将通过一些漂亮的动画向您展示每种算法的优缺点.

简短的回答是没有最好的排序(但你知道,因为你说80%的时间:))但快速排序(或3路快速排序)可能是你可以使用的最好的通用算法.

它是.Net中列表默认使用的算法,因此.Sort如果您拥有的内容已经在列表中,则可以调用它.

如果你想看看如何实现这个,我在上面指出的网站上有伪代码.



2> Keltex..:

你想要排序什么?有没有理由不使用:

List.Sort() ? 

我确信这使用QuickSort,您不必担心编码错误.您可以实现IComparable来更改要排序的内容.

如果你的所有数据都不适合你的内存......那么你就可以通过合并排序或类似的方式进行比赛了.

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有