我们知道我们可以使用
timeLeft = Math.round(timeLeft/1000) * 1000;
const timer = new Date(timeLeft);
return timer.getUTCMinutes() + ':' + timer.getUTCSeconds();
在插入所有元素后对列表进行排序。
但是如果元素一次插入一次,那么Collections.sort
可能更有效吗?
虽然SortedMap
缺少SortedMap
方法。
我需要的是像subList
这样的东西可以有效地多次插入少量元素,并且总是可以通过SortedMap
接口从上到下获得1~1000个子列表。
有任何建议吗?
答案 0 :(得分:1)
我认为SortedSet
是NavigableSet
,后者又有subSet
,tailSet
,headSet
,ceiling
和{{}等方法1}}对于这类问题。
所以你可以这样做:
floor
显然,您可以使用您想要的TreeSet
创建Comparator
,并按照您觉得更方便的顺序执行搜索。
SortedSet<Integer> set = new TreeSet<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
SortedSet<Integer> subset = set.subSet(3,7);
System.out.println(subset); //[3,4,5,6]