static void Main(string[] args)
{
int[] array = new int[100];//定义一个长度为100的数组
Random random = new Random();
for (int i= 0; i < 100; i++)
{
array[i] = random.Next(1000);//给数组随机分配值
//Thread.Sleep(10);//休眠10毫秒,可注释掉
}
//第一层循环,按照冒泡排序的规则应该比较N-1次
for (int i = 0; i < array.Length - 1; i++)
{
//第二层循环,根据循环次数,最大的一个数肯定在末尾,故不需要再比较后面的数,因为已经进行好排序了,所以这一层循环次数要减少之前已经排好序的个数再减一
for (int j = 0; j < array.Length - 1 - i; j++)
{
//int temp1 = array[j];//可注释,我是用于观察值
//int temp2 = array[j + 1];//可注释,我是用于观察值
//进行比较,如果当前数比后一个数大,那么就交换位置,确保最大的数移动到后面去
if (array[j] > array[j + 1])
{
//将当前值和比它小的值进行交换
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for(int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);//循环输出
}
Console.ReadKey();
}
C# 简单冒泡排序
最新推荐文章于 2024-04-22 15:24:34 发布