usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
namespacebleb_sort
...{
classProgram
...{
publicclassSwapObj
...{
publicstaticvoidswap<T>(refTa,refTb)
...{
Tc;
c=a;
a=b;
b=c;
}
}
staticvoidMain(string[]args)
...{
//冒泡排序:
int[]num=newint[]...{12,3,6,16,19,7,33,21,20,100,100,115,55,58,77};
foreach(intiinnum)
...{
Console.Write(i.ToString()+",");
}
Console.WriteLine();
Console.WriteLine("排序后:");
intcounter1=0;
intcounter2=0;
for(inti=0;i<num.Length-1;i++)
...{
for(intj=i+1;j<num.Length;j++)
...{
if(num[i]<num[j])
...{
SwapObj.swap<int>(refnum[i],refnum[j]);
counter1++;
}
counter2++;
}
}
Console.WriteLine("循环了{0}次。",counter2);
Console.WriteLine("其中交换了{0}次。",counter1);
foreach(intiinnum)
...{
Console.Write(i.ToString()+",");
}
Console.ReadLine();
}
}
}

本文通过一个具体的冒泡排序示例介绍了如何使用C#实现数组的逆序排列,并详细展示了循环与交换次数。
1102

被折叠的 条评论
为什么被折叠?



