排序后如何查找数组中项的索引

时间:2016-03-09 18:43:36

标签: java sorting time-complexity

我有int数组,例如{7,3,5,4},我想对它们进行排序,但我想在排序之前找出项目的索引。我不想在未排序的数组中找到该项,因为它太慢了(复杂性 O(n ^ 2))。有什么方法可以做到吗?

1 个答案:

答案 0 :(得分:0)

如果你不想跟踪2个数组,我在这些情况下喜欢做的是创建一个... public class DockerJob { ... multiscm { git { remote { url(...) branch(...) ... } shallowClone() cloneTimeout(60) // Add "checkout timeout" here... } ... } ... } ... ,其中键是数组的值,值是数组的索引。只是给你评论的另一个变化。像这样:

TreeMap

输出:

int[] intArray = { 7, 3, 5, 4 };
Map<Integer, Integer> map = new TreeMap<>();
for(int i=0; i<intArray.length; i++){
    map.put(intArray[i], i);
}
//prints numbers in order with orginal index
for(int key : map.keySet()){
    System.out.println("Number "+key);
    System.out.println("Orginal index "+map.get(key));
}