个人对冒泡排序的一些理解

    技术2022-07-21  86

    分析

    冒泡排序: 将一个无序数组进行排序 例: 规则: 从第一个数开始,第一个数和后面的数进行比较,小的放前面,大的放后面。直到最后两个数进行比较后,算一轮排序。因为每一轮会确定一个数的位置,因此总轮数正好是数组长度 - 1。

    思路

    考虑使用内外层for循环,外层控制冒泡排序的轮数,内层循环对数进行两两比较。使用if条件语句进行两数的交换。

    实战

    public class BubbleSort { public static void main(String[] args) { int[] arr = {31, 22, 100, 1, 60, 30, 76, 46}; //输出排序前的数组 for (int j = 0; j < arr.length; j++) { System.out.print(arr[j] + " "); } System.out.println("\n================================"); int temp = 0; //排序过程 for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } //输出排序后的数组 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } }

    结果

    PS:每天坚持撸代码,总有一天会秃的

    Processed: 0.009, SQL: 9