LinkedSortedMap 나는 삽입 순서로 이송 될 필요가있는 목록을 가지고있다. 그러나 floorEntry 및 ceilingEntry 값을 사용하여 "시작 지점"을 찾고 싶습니다.자바 : 통과하여 w/o LinkedList의에서 처음 floorEntry()를 얻는 방법에 대해 설명합니다.
그래서 나는 다음 원하는 작업과 모음이 필요합니다> = 또는 <이 = (바닥
- 모든 값을 찾을 :
- 자주 삽입/이런 식으로 통과하는
- 필요 끝에 추가 , 천장)
- 다음을이 순서로 통과하십시오.
- 기준과 일치하는 각 항목을 제거하십시오.
그래서 컬렉션을 정렬 순서대로 정렬해야하며 정렬 된 값을 기준으로 임의 액세스가 필요합니다.
는 LinkedSortedMap 같은 뭔가가 있나요? 그러나 이것이 확실하게 작동하지 않을 수도 있습니다. 나는 LinkedList의에서 값의 첫 번째 floorEntry()을 찾을 수있는 방법을? floorEntries가 연결된 목록을 어떻게 찾을 수 있습니까? 즉
============== ============================= =
//I have timeseries of Ints.
TimeSeries<Int> collection = new LinkedList<>()
/*
FindAndRemove is to remove first n Ints that are <= x
*/
FindAndRemove1(Int x,int n) {
//return an iter to filtered subset of collection
iter = collection.floorEntrySet(x)
for (int i =0; i<n; i++) {
iter.remove()
if (!iter.hasnext) break;
iter->next
}
FindAndRemove2(Int x,int n) {
//return an collection.iter to oldest Int that is <= x
iter = collection.floorEntry(x)
for (int i = 0; iter.hasnext; iter.next) {
if (iter.x > x)
continue;
iter.remove()
if (++i > n) break;
}
}
실 거예요 작품에 트리 맵을 사용하여 사용자의 요구에 맞게 적용 할 수있을 수있는 HashBiMap 있습니다. 컬렉션을 시간별로 정렬해야합니다 ....하지만 시간과 가치에 따라 조회를 수행해야합니다. 좋아 보이는 -이 경우 – jaybny
@jaybny는 –
확인 위의 내 편집을 참조하십시오. 그러나 lookupMap에 floor를해야하므로 lookupMap은 SortedMap이어야합니다. 어쩌면 명확히하기 위해 내 질문을 편집해야 할 수도 있습니다. – jaybny