I know you can find the first and last elements in a treeset. What if I wanted to know what the second or third element was without iterating? Or, more preferable, given an element, figure out it's rank in the treeset.
Thanks
EDIT: I think you can do it using tailset, ie. compare the size of the original set with the size of the tailset. How efficient is tailset?
According to the source of the Sun JDK6 implementation, tailSet(E).size()
iterates over the tail set and counts the elements, so this call is O(tail set size).