C#语法基础14_冒泡排序Bubble Sort    

C#语法基础14_冒泡排序Bubble Sort

理解

例子(代码实现)


理解

以升序冒泡为例

从第一个数开始进行每两个数的比较交换,逐渐将数组中的最大数放到最后,

接着,将第二大数放到倒数第二最终实现升序有序数组,

以此类推

参考链接

例子(代码实现)

以arr[10] = { 23, 2, 3, 34, 6, 1, 24, 45, 78, 8 }进行升序排序为例

class Program
    {
        static void Main(string[] args)
        {
            int[] arr = new int[10] { 23, 2, 3, 34, 6, 1, 24, 45, 78, 8 };
            BubbleSort(arr);
        }

        static void BubbleSort(int[] arr)
        {
            int temp;

            PrintArr(arr);
            Console.Write("\n");

            for (int i = 0; i<arr.Length; i++)
            {
                for(int j = 0; jarr[j+1])
                    {
                        temp = arr[j+1];
                        arr[j+1] = arr[j];
                        arr[j] = temp;
                    }
                }
                PrintArr(arr);
            }
        }

        // 输出数组内容的方法
        static void PrintArr(int[] arr)
        {
            for (int k = 0; k < arr.Length; k++)
            {
                Console.Write("{0,2:G}  ",arr[k]);
            }
            Console.Write("\n");
        }
    }

运行结果:

C#语法基础14_冒泡排序Bubble Sort_C#语法