【问题标题】:How does LINQ sort in C#?LINQ 如何在 C# 中排序?
【发布时间】:2018-09-29 10:41:36
【问题描述】:

我学习 C# 并尝试了解 LINQ 的工作原理?

int[] arr = {5,1,9,4,6,2,8,3,7};
var arr2 = from i in arr
           orderby i
           select i;

LINQ如何对数组进行排序以及运行时间是多少?

【问题讨论】:

标签: c# arrays sorting


【解决方案1】:

它实际上并不对数组进行排序,而是返回一个新的枚举。 linq2objects使用的排序算法是Quicksort,时间复杂度为O(n log n)

【讨论】:

    【解决方案2】:

    默认情况下按“升序”排序,来自示例:

    int[] arr = { 5, 1, 9, 4, 6, 2, 8, 3, 7};
    var var1 = from i in arr
    orderby i //ascending
    select i;
    

    如果你想降序:

    int[] arr = { 5, 1, 9, 4, 6, 2, 8, 3, 7};
    var var1 = from i in arr
    orderby i descending
    select i;
    

    希望对你有所帮助。

    【讨论】:

      猜你喜欢
      • 2011-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-22
      • 2019-06-22
      相关资源
      最近更新 更多