Java基础之冒泡排序算法

    xiaoxiao2021-03-26  10

    算法思路,如按从小到大排列 设一共n个数,首先将第一个数和第二个数进行比较,若第一个大,则与第二个交换位置,然后继续和第三个比较,若依然比第三个大,则继续交换位置,…直到与第n个数比较,此时第一个数的排序就完成了 接着进行第二个数的冒泡排序 … 一直执行完n个数,冒泡排序完成

    public class Bubble { public static void main(String[] args) { int[] ints = new int[20]; Random random = new Random(); int max = 100; int min = 1; //数组随机赋值 for(int i=0;i<ints.length;i++){ ints[i] = random.nextInt(max) % (max - min + 1) + min; } System.out.println(Arrays.toString(ints)); bubble(ints); System.out.println(Arrays.toString(ints)); } //冒泡排序算法 static void bubble(int[] ints) { for (int i = 0; i < ints.length - 1; i++) { for (int j = 0; j < ints.length - i - 1; j++) { if (ints[j] < ints[j + 1]) { int temp = ints[j]; ints[j] = ints[j + 1]; ints[j + 1] = temp; } } } } }

    算法复杂度 时间复杂度:O(n2) 空间复杂度:O(1)

    转载请注明原文地址: https://ju.6miu.com/read-600098.html

    最新回复(0)