2.2选择排序

2018-09-17  本文已影响0人  蜗牛滴追逐

2.1选择排序复习
时间复杂度o(n^2)

冒泡排序习题.png

思路:0~N-1 个数
1.0~N-1中选择最小的数放在0上
2.1~N-1中选择最小的数放在1上
......
3.依次选择,直至供选择的数只剩下一个的时候,数组就变得有序了。

package chenzp;

import java.util.Scanner;

public class barrier2_3 {

public static int[] barrier2(int[] A, int n) {

    for (int i = 1; i <= n; i++) {
        int min = i;
        int temp;

        for (int j = i + 1; j <= n; j++) {

            if (A[j - 1] < A[min - 1]) {
                min = j;
            }

        }

        if (min != i) {
            temp = A[i - 1];
            A[i - 1] = A[min - 1];
            A[min - 1] = temp;
        }

    }

    return A;
}

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int a[] = new int[n];
    for (int i = 0; i < n; i++) {
        a[i] = sc.nextInt();
    }

    barrier2_3.barrier2(a, n);

    for (int i : a) {
        System.out.println(i);
    }
}

}

上一篇下一篇

猜你喜欢

热点阅读