using System;
/// <summary>
/// 平均时间复杂度从高到低依次是:
///冒泡排序(o(n2)),选择排序(o(n2)),插入排序(o(n2)),堆排序(o(nlogn)),
///
///归并排序(o(nlogn)),快速排序(o(nlogn)), 希尔排序(o(n1.25)),基数排序(o(n))
/// </summary>
public class Program
{
static void Main(string[] args)
{
int[] intNums = { 1, 3, 54, 5, 6, 7, 8, 67, 9 };
string[] arr = { "w", "s", "t", "a", "9", "e", "6" };
// BubbleSort<int>(intNums, (a, b) => { return a < b; });
// SelectSort<int>(intNums, (a, b) => { return a < b; });
// InsertSort<int>(intNums, (a, b) => { return a < b; });
// InsertSortImprovedWithBinarySearch<int>(intNums, (a, b) => { return a > b; });
// QuickSortStrict<int>(intNums, (a, b) => { return a > b; });
ShellSort<int>(intNums, (a, b) => { return a > b; });
Print<int>(intNums);
BubbleSort<string>(arr, (a, b) => a.CompareTo(b) > 0);
Print<string>(arr);
Console.ReadKey();
}
public static void Print<T>(T[] arr)
{
for (int i = 0; i < arr.Length; i++)
{
Console.Write(arr[i] + " ");
}
Console.WriteLine();
}
private
c#泛型算法
最新推荐文章于 2023-06-16 15:38:21 发布