选择排序代码

选择排序

什么是选择排序?

首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕

就是每循环一次就找出最小的那个数索引,然后交换位置

代码演示

int arr[]= {12,23,23,15,5674,54,-12,-68,0};
		
		for (int i = 0; i < arr.length-1; i++) {
			//保存该轮的第一个数的位置为最小值的位置
			int index=i;
			//内层循环控制找最小值位置(范围:轮数~长度-1)
			for (int j = i+1; j < arr.length; j++) {
				if(arr[index]>arr[j]) {
					//把最小值索引给index,继续循环找比他还小的索引
					index=j;
				}
			}
			//将最小的数据和该轮的开始位置交换
			if(index!=i) {
				arr[i]=arr[i]^arr[index];
				arr[index]=arr[i]^arr[index];
				arr[i]=arr[i]^arr[index];
			}
		}
		System.out.println(java.util.Arrays.toString(arr));

你可能感兴趣的:(java,排序算法,算法,数据结构,java)