黑马程序员技术交流社区
标题:
排序后,返回原顺序的角标
[打印本页]
作者:
谢晓明
时间:
2015-5-27 21:46
标题:
排序后,返回原顺序的角标
package cn.itcast;
public class IndexSort {
public static int[] indexSort(int[] arr) {
int[] index = new int[arr.length];
for (int i = 0; i < index.length; i++) {
index[i] = i;
}
for (int i = 0; i < arr.length - 1; i++) {
// 内循环控制每次比较中,元素两两比较的过程。每次需要比较的数据是逐渐减少的。
for (int j = 0; j < arr.length - 1 - i; j++) {
// 比较相邻元素,如果前面的大,进行交换
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
temp = index[j];
index[j] = index[j + 1];
index[j + 1] = temp;
}
}
}
return index;
}
}
作者:
谢晓明
时间:
2015-5-27 21:48
如: [8,6,9]排序后 [6,8,9]
角标 [0,1,2]排序后 [1,0,2]
作者:
wwb1105
时间:
2015-5-27 22:14
学习学习!!!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2