排序算法--选择排序

xiaoxiao2021-02-28  11

选择排序:

算法原理 简单来说就是每次循环,选出最大的数和最小的数放在第一个位置。

功能实现代码:

int[] arr={5,2,1,3,4,9,6,7,8}; for(int i=0;i<arr.length;i++){ for(int j=i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ int temp; temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } }

案例:

package test1; public class Test1 { public static void main(String[] args) { int[] arr={5,2,1,3,4,9,6,7,8}; int sum=0; System.out.println("初始数组顺序:"); printArr(arr); System.out.println(); for(int i=0;i<arr.length;i++){ for(int j=i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ int temp; temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } ++sum; System.out.println("第"+sum+"次循环"); printArr(arr); System.out.println(); } } private static void printArr(int[] arr) { for(int i:arr){ System.out.print(" "+i+" "); } } }

运行结果:

初始数组顺序: 5 2 1 3 4 9 6 7 8 第1次循环 1 5 2 3 4 9 6 7 8 第2次循环 1 2 5 3 4 9 6 7 8 第3次循环 1 2 3 5 4 9 6 7 8 第4次循环 1 2 3 4 5 9 6 7 8 第5次循环 1 2 3 4 5 9 6 7 8 第6次循环 1 2 3 4 5 6 9 7 8 第7次循环 1 2 3 4 5 6 7 9 8 第8次循环 1 2 3 4 5 6 7 8 9 第9次循环 1 2 3 4 5 6 7 8 9
转载请注明原文地址: https://www.6miu.com/read-200213.html

最新回复(0)