C#中的冒泡排序
C#之冒泡排序
冒泡排序的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。 由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序。
冒泡排序有两个很明显的优势: 1.“编程复杂度”很低,很容易写出代码; 2.具有稳定性,这里的稳定性是指原序列中相同元素的相对顺序仍然保持到排序后的序列,而堆排序、快速排序均不具有稳定性。
namespace BubbleSort { class Program { private void Func(int[] Arg) { //外循环每次把参与排序的最大数排在最后 for (int i = 1; i < Arg.Length; i++) { int a = 0; // 临时变量 //内层循环负责对比相邻的两个数,并把最大的排在后面 for (int j = 0; j < Arg.Length-i; j++) { //如果前 一个数大于后一个数,则交换两个数 if (Arg[j] > Arg[j + 1]) { a = Arg[j + 1]; Arg[j + 1] = Arg[j]; Arg[j] = a; } }