【发布时间】:2014-10-31 22:09:44
【问题描述】:
我正在用 c# 编写一个程序,我得到了一个包含我想用 c# 排序的对象的列表。 我无法让它工作,也不明白它应该如何实现。
我对我应该使用哪种算法进行了一些研究,并提出了归并排序,因为它总是 n(log n) 并且不依赖于像快速排序这样的枢轴的幸运机会来实现它。
到目前为止,我为什么选择它并想要它。 :)
这是一个有重量的列表 每个重量都包含一个日期和一个体重。 我想让它按日期排序并让方法返回排序后的列表。
有人可以帮助我实现这一目标。你会帮我很多:)
提前致谢
【问题讨论】:
-
1) 在你的类中实现 IComparable 接口。 2)将您的对象添加到列表中。 3)在列表对象上调用Sort()
-
是的,
IEnumerable<T>.Sort将执行快速排序,但它通常比合并排序更好。使用 Mergesort 需要有一个非常好的理由,最重要的是IEnumerable<T>.Sort是一个出色的 Quicksort 实现。阅读:stackoverflow.com/questions/70402/…
标签: c# implementation mergesort