我想知道是否有办法实现这一目标,或者是否有其他数据结构。它必须进行排序,没有重复,并且有一个迭代器。
答案 0 :(得分:12)
TreeSet
有一个iterator
,已排序,不会有重复项,并且可以使用higher
查看下一个更高的元素。
例如:
TreeSet<Integer> ts = new TreeSet<Integer>();
ts.add(1);
ts.add(4);
ts.add(4);
ts.add(3);
for (Integer i : ts) {
System.out.println("current: " + i + " next: " + ts.higher(i));
}
输出结果为:
current: 1 next: 3
current: 3 next: 4
current: 4 next: null