欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

直接选择排序

程序员文章站 2024-01-17 22:10:58
...

直接选择排序是一种不稳定的排序方法,基本思想为每趟从待排序的数列中选出最小(或最大)的数,顺序放在已经排好序的最后。

package SortRank;

/**
 * 直接选择排序
 *
 */

public class SimpleSelectionSort {
	public static void main(String[] args) {
		int arr[] = {87,45,78,32,17,65,53,9,122,133};
		System.out.println("数组排序前的顺序:");
		printArray(arr);
		sort(arr);
		System.out.println("数组最终排序的顺序:");
		printArray(arr);
	}
	
	private static void sort(int arr[]) {
		int count = 0;
		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[j];
					arr[j] = arr[i];
					arr[i] = temp;
				}
			}
			System.out.println("第" + ++count + "次数组排序的顺序:");
			printArray(arr);
		}
	}
	
	private static void printArray(int arr[]) {
		for(int in : arr) {
			System.out.print(in + "\t");
		}
		System.out.println();
	}
}