我想在arraylist中保存3000 int值。然后我想检索5个最小的整数。什么数据结构适合这个?
请注意,我使用过Arraylist数据结构。列表中项目的位置很重要。排序后,位置会改变。我怎样才能达到目的?
答案 0 :(得分:1)
假设Java是您的首选语言:
如果您知道高级中的所有值,并且您不打算添加新值或删除现有值,则可以使用数组:
int[] array = new int[3000]; // or simply int[] array = {your values};
array[0] = ...
array[1] = ...
...
Arrays.sort(array);
否则,您可以使用列表:
List<Integer> list = new ArrayList<Integer>();
list.add(...);
list.add(...);
...
Collections.sort(list);