我有一行int数字,例如1 2 3 7 8 9.对它们进行了分类。
我经常需要在此行中插入数字,以便该行保持排序状态,例如4 => 1 2 3 4 7 8 9.有时我必须从开头读取一行到一个数字,这取决于行中的数字。
哪种数据类型最佳选择以及如何最好地插入新数字?
答案 0 :(得分:1)
如果你的序列没有重复,你可以使用SortedSet<Integer>
,例如TreeSet<Integer>
,这样每次你和一个元素序列将保持排序。
如果序列确实有重复,请查看番石榴的sorted multiset。
答案 1 :(得分:-1)
尝试ArrayList。操作比简单的数组更容易。如果你只需要使用原语,这仍然可以使用一组int来完成。
ArrayList<Integer> foo = new ArrayList<integer>;
foo.add(2,4) //puts a 4 at index 2, shifting everything else down