Java实现选择排序
版权声明:转载前请留言获得作者许可,转载后标明作者 QiuYuHaOo 和原文出处。原创不易,感谢您的支持
选择排序原理
Selection Sort使用实例
选择排序的优化
1.选择排序原理
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
2.Selection Sort使用实例
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("请输入数字个数:");
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] a = new int[n];
for(int i = 0; i < a.length; i++) {
a[i] = scanner.nextInt();
}
scanner.close();
print(a);
selectionSort(a);
print(a);
}
public static void print(int[] a) {
for(int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
System.out.println();
}
public static void selectionSort(int[] a) {
for(int i = 0;i < a.length; i++) {
for(int j = i+1;j < a.length;j++) {
//当后者比前者小时,交换
if(a[j]<a[i]){
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
}
3.选择排序的优化
public static void selectionSort(int[] a){
int temp, k;
for(int i=0; i<a.length; i++) {
k=i;
for(int j=k+1; j<a.length; j++) {
if(a[j] < a[k]){
k = j;
}
}
if(k != i) {
temp = a[i];
a[i] = a[k];
a[k] = temp;
}
}
}