gpt4 book ai didi

java - 按值获取列表的顺序

转载 作者:行者123 更新时间:2023-12-02 09:49:19 27 4
gpt4 key购买 nike

我有一个具有不同值的列表顺序:

List<Double> values = new LinkedList<Double>();
values.add(0.1);
values.add(0.8);
values.add(0.3);

根据给定列表的值的顺序获取索引列表的最快方法是什么,在本例中为 {1, 3, 2},因为 0.1 是最小的,0.2 是第二小的,0.8 是第三小的?

最佳答案

一种获取这个索引列表的方法,仅使用jdk5

    List<Float> positions = new ArrayList<Float>();
List<Integer> indexes = new ArrayList<Integer>();
positions.add(0.1f);
positions.add(0.8f);
positions.add(0.3f);

// copy float elements to another List, so to keep the order
List<Float> sortedPositions = new ArrayList<Float>();
Collections.copy(sortedPositions, positions);
Collections.sort(sortedPositions);

for (Float position : positions) {
indexes.add(sortedPositions.indexOf(position));
}

for (Integer index : indexes) {
System.out.print(index + ",");
}
// prints 1,3,2,

关于java - 按值获取列表的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23428625/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com