我们要对数组进行排序,但又要引用排序之前的下标时,在排序的过程中记录并保存下标即可。
int[] num = new int[3];
int max, value, index;
num[0] = 5;
num[1] = 3;
num[2] = 9;
int[] index = new int[3];
for(int i = 0; i < 3; i++){
//下标数组赋初值
index[i] = i;
}
for(int i = 0; i < 3; i++){
max = num[i];
k = i;
for(int j = i + 1; j < 3; j++){
if(max < num[j]){
max = num[j];
k = j;
}
}
value = num[i]; num[i] = num[j]; num[j] = value;
index = index[i]; index[i] = index[j]; index[j] = index;
}