1. 选择排序: 例如有下列数组 arr {20,25,30,15,10}. 第一次排序,让数组的第一位数与其后面的每一位数进行比较,将所比的最小的数字放到第一位. (1)20与25相比较,20比25小,所以数组不变. (2)20与30相比较,20比30小,所以数组不变. (3)20与15相比较,20比15大,所以20与15位置交换. (4)15与10相比较,15比10大,所以15与10位置交换. 这一步骤的程序可以写为 int[] arr = {20,25,30,15,10}; min = arr[0]; for(int i = 1;i<arr.lenght;i++){
iIf(min >arr){
inttemp = min; min =arr; arr= temp; } } arr[0] = min; 经过第一个步骤的比较后,第一位变为了数组中最小的数,所以第二步从数组的第二位开始. (1)25与30相比较,20比25小,所以数组不变. (2)25与20相比较,25比20大,所以25与20位置交换. (3)20与15相比较,20比15大,所以20与15位置交换. 这一步骤的程序可以写为 int[] arr = {10,25,30,20,15}; min = arr[1]; for(int i = 2;i<arr.lenght;i++){
iIf(min >arr){
inttemp = min; min =arr; |