Java的选择排序。
人气:0Java选择排序的思想(以从小到大排序为例,从大到小排序于此相同):
在arr[0]到arr[n-1]中选出最小(大)的的数与arr[0]交换位置,
在arr[1]到arr[n-1]中选出最小(大)的的数与arr[1]交换位置,
在arr[2]到arr[n-1]中选出最小(大)的的数与arr[2]交换位置,
. . .
. . .
. . .
在arr[n-2]到arr[n-1]中选出最小(大)的的数与arr[n-2]交换位置,
操作方法
- 01
新建一个新的Java项目,名字按照个人喜好,如:SelectionSortDemo,并在当中写好main方法。在main函数中新建一个int类型数组,如:{6,1,5,7,8,3,4,2}。
- 02
排序的代码:public static void selectionSort(int[] arr){for(int i=0;i<arr.length-1;i++){for(int j=i+1;j<arr.length;j++){if(arr[i]>arr[j]){int temp=arr[i];arr[i]=arr[j];arr[j]=temp;}}}}
- 03
每次排序结果的查看和代码:public static void selectionSort(int[] arr){for(int i=0;i<arr.length-1;i++){for(int j=i+1;j<arr.length;j++){if(arr[i]>arr[j]){int temp=arr[i];arr[i]=arr[j];arr[j]=temp;}}getPrint(i, arr);}}public static void getPrint(int i,int[] arr){System.out.print("第"+(i+1)+"次排序的结果:");for(int j: arr){System.out.print(j+" ");}System.out.println();}
- 04
main函数中调用方法,run as执行查看结果,public static void main(String[] args) ;System.out.print("排序前: ");for (int i : arr) {System.out.print(i + " ");}System.out.println();selectionSort(arr);System.out.print("排序后: ");for (int i : arr) {System.out.print(i + " ");}}
特别提示
注意for循环的条件
加载全部内容