求C#冒泡排序法. !

2024-11-21 15:39:26
推荐回答(3个)
回答1:

//冒泡的思想就是数组中拿出一个值,和之后的值进行大小比较,如果他是最小的就不动位置,否则和比他小的交换位置,每个位置上的数字都要和其后的所有数字进行大小比较
public int[] Pop(int[] listI)
{
//数组为null抛出异常
if (listI == null) throw new ArgumentNullException("listI");

//存储临时的需要冒泡的值
int temp = 0;

//从数组的第一个值遍历到倒数第二个值
for (int i = 0; i < listI.Length - 1; i++)
{
//从比i大1的值开始遍历到结束
//这里比较的总是比i大的值,因为之前的值已经冒泡完成
for (int j = i + 1; j < listI.Length; j++)
{
//如果前一个值大于后一个值,他们交换位置
if (listI[i] > listI[j])
{
//交换位置
temp = listI[i];
listI[i] = listI[j];
listI[j] = temp;
}
}
}

return listI;
}

回答2:

for(int i=1; for(int j=0;j {
if(numb[j] > numb[j+1])
{
int t = numb [j];
numb [j] = numb [j+1];
numb [j+1] = t;
}
}

回答3:

class ArraySort
{
public static void Main()
{
int[] d = {10,15,21,43,17,98,2,74,63,10};
int temp;
//冒泡法排序
for(int i=0; i for(int j=i+1; j if(d[i] {
temp = d[i];
d[i]=d[j];
d[j]=temp;
}