选择排序java实现

160 阅读1分钟

选择排序,和冒泡排序一样,都是从第一个元素开始依次和后面的元素比较大小,不同的是选择排序每次比较之后,不交换位置,而是记录最小的元素的索引,这样在一次遍历完之后在将索引位置的元素与比较的元素交换,这样可以不用频繁的交换元素位置. 代码:

public static void sort(int[] arr){
	
	for (int i = 0; i < arr.length; i++) {
		int index=i;
		for (int j = i; j < arr.length; j++) {
			if(arr[i]>arr[j]){
				index=j;
			}
		}
		//判断索引值是否改变,如果改变,则交换元素
		if(index!=i){
			int temp=arr[i];
			arr[i]=arr[index];
			arr[index] = temp;
		}
	}
}