温馨提示×

c#集合如何进行排序算法

c#
小樊
81
2024-11-20 12:44:37
栏目: 编程语言

在C#中,可以使用List类或Collection类提供的Sort方法对集合进行排序。也可以使用LINQ(Language Integrated Query)对集合进行排序。以下是各种方法的示例:

  1. 使用List类的Sort方法:
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 5, 3, 8, 1, 9 };
        numbers.Sort(); // 使用默认比较器进行排序(升序)

        Console.WriteLine("Sorted list:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
    }
}
  1. 使用List类的Sort方法并提供自定义比较器(降序):
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 5, 3, 8, 1, 9 };
        numbers.Sort((x, y) => y - x); // 使用自定义比较器进行降序排序

        Console.WriteLine("Sorted list in descending order:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
    }
}
  1. 使用LINQ进行排序:
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 5, 3, 8, 1, 9 };

        var sortedNumbers = numbers.OrderBy(x => x).ToList(); // 使用LINQ进行升序排序

        Console.WriteLine("Sorted list using LINQ:");
        foreach (int number in sortedNumbers)
        {
            Console.Write(number + " ");
        }
    }
}
  1. 使用LINQ进行降序排序:
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 5, 3, 8, 1, 9 };

        var sortedNumbers = numbers.OrderByDescending(x => x).ToList(); // 使用LINQ进行降序排序

        Console.WriteLine("Sorted list in descending order using LINQ:");
        foreach (int number in sortedNumbers)
        {
            Console.Write(number + " ");
        }
    }
}

这些示例展示了如何在C#中使用不同的方法对集合进行排序。你可以根据需要选择合适的方法。

0