快速排序示例 (语言:C#)
源代码如下。 快速排序的基本思想已经体现了出来。
using System;
using System.Collections.Generic;
using System.Text;
namespace QuickSort
{
class Program
{
static void Main(string[] args)
{
//产生随机数
int[] array = new int[100000];
for (int i = 0; i < = 99999; i++)
{
if (i == 0)
array[i] = (new Random()).Next(1000);
else
array[i] = (new Random(array[i - 1])).Next(1000);
}
QuickSort(ref array, 0, array.Length - 1);
foreach (int i in array)
{
Console.Write(i.ToString() + " ");
}
Console.ReadLine();
}
static void QuickSort(ref int[] array, int start, int end)
{
if (start == end - 1)
return;
if (start >= end)
return;
int i = 0, j = 0, k = 0, x = start, z = array[x];
i = start;
j = end;
while (i < j)
{
while (array[j] >= z && j > i) j--;
if (i < j) array[i] = array[j];
while (array[i] <= z && j > i) i++;
if (i < j) array[j] = array[i];
}
array[i] = z;
QuickSort(ref array, start, i - 1);
QuickSort(ref array, i + 1, end);
}
}
}
题外话:我帮你整理了包括 AI 写作、绘画、视频(自媒体制作)零门槛 AI 课程 + 国内可直接顺畅使用的软件。想让自己快速用上 AI 工具来降本增效,辅助工作和生活?限时报名。
© 转载需附带本文链接,依据 CC BY-NC-SA 4.0 发布。