c#集合如何進(jìn)行排序算法

c#
小樊
81
2024-11-20 12:44:37
欄目: 編程語言

在C#中,可以使用List類或Collection類提供的Sort方法對(duì)集合進(jìn)行排序。也可以使用LINQ(Language Integrated Query)對(duì)集合進(jìn)行排序。以下是各種方法的示例:

  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(); // 使用默認(rèn)比較器進(jìn)行排序(升序)

        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); // 使用自定義比較器進(jìn)行降序排序

        Console.WriteLine("Sorted list in descending order:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
    }
}
  1. 使用LINQ進(jìn)行排序:
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進(jìn)行升序排序

        Console.WriteLine("Sorted list using LINQ:");
        foreach (int number in sortedNumbers)
        {
            Console.Write(number + " ");
        }
    }
}
  1. 使用LINQ進(jìn)行降序排序:
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進(jìn)行降序排序

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

這些示例展示了如何在C#中使用不同的方法對(duì)集合進(jìn)行排序。你可以根據(jù)需要選擇合適的方法。

0