using System;
namespace 关于快速排序的测试
{
class Program
{
static void Main(string[] args)
{
int[] array = { 49,38,65,97,76,13,27,49};
qSort(array, 0, array.Length - 1);
for (int i = 0; i < array.Length; i++)
Console.Write(array[i]+" ");
}
public static void qSort(int[] a, int left, int right)
{
// Console.WriteLine("deee");
if (left >= right)
{
return;
}
int i = left;
int j = right;
int key = a[left];
while(i<j)
{
//Console.WriteLine("ttt");
while (i<j && a[j]>=key)
{
j--;
}
swap(a, i, j);
while(i<j && a[i]<=key)
{
i++;
}
swap(a, i, j);
}
qSort(a, left, i - 1);
qSort(a, i + 1, right);
}
public static void swap(int[] a,int i,int j)
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
C#实现快速选择排序算法
最新推荐文章于 2024-09-27 14:28:55 发布