我必须在C#中创建一个冒泡排序程序,该程序对存储在数组中的随机整数进行排序。我必须对长度为100、1,000、10,000等的数组执行这些操作。我有一些可以正确运行和编译的代码,但执行不正确。代码如下:
using System;
namespace SortingProject
{
class MainClass
{
public static void Main(string[] args)
{
int[] list = {100};
Random rand = new Random();
for (int i = 0; i < list.Length; i++) {
list[i] = rand.Next(1,100);
}
BubbleSorting(list);
}
public static void BubbleSorting(int [] array) {
int first = 0;
for (int sorted = 0; sorted < array.Length; sorted++)
{
for (int sort = 0; sort < array.Length - 1; sort++)
{
if (array[sort] > array[sort + 1])
{
first = array[sort + 1];
array[sort + 1] = array[sort];
array[sort] = first;
}
}
}
for (int i = 0; i < array.Length; i++)
Console.Write(array[i] + " ");
Console.ReadKey();
}
}
}
运行程序时,输出仅是一个随机生成的整数,我想知道为什么会这样?我知道代码中的某些内容无法正常运行,但是我是否可以正确执行冒泡排序?我没有看到代码有什么问题。
答案 0 :(得分:-1)
更改此:
int[] list = {100};
为此:
int[] list = new int[100];