.NET中是否有内置的稳定排序例程和交换功能?

ved*_*eda 3 .net c# standard-library built-in stable-sort

在.NET中是否有任何内置的稳定排序例程?

我知道C++在"算法"下有一个内置的排序例程std::sort().同样,我们有什么东西可以和C#一起使用吗?

另外,.NET中是否有内置交换功能?

Doc*_*own 10

在Google中使用"C#stable sort"显示此SO帖子为最佳结果:

.NET的`Array.Sort()`方法使用的排序算法是一种稳定的算法吗?

所以答案是:Enumerable.OrderBy是一个稳定的排序函数,不是内置于C#中,而是.NET框架库的一部分.

关于"交换":我不知道.NET框架中的任何预构建的通用交换函数,但是在这里你可以找到一个不到10行代码的实现:

static void Swap<T>(ref T lhs, ref T rhs)
{
    T temp;
    temp = lhs;
    lhs = rhs;
    rhs = temp;
}
Run Code Online (Sandbox Code Playgroud)