Это зависит.Если вы хотите иметь «всегда отсортированный» контейнер, тогда TreeSet - ваш друг.Добавление еще одного элемента в TreeMap будет O (log (n)) - (очень хорошо, быстрее, чем линейный).
Если вам нужно отсортировать его только один раз (без добавления элементов позже), просто поместите его ArrayList и использовать метод sort () .Это будет оптимально - O (n log (n))
Обновление:
Как упоминал в комментарии JB Nizet, Set (TreeSet) не может содержать дубликаты.Список (ArrayList) можно.
Если важна производительность и много элементов, и вам нужно хранить отсортированные элементы, допускающие дубликаты, вы можете сохранить их в TreeSet, но нужно реализовать подсчет (add()
будет element.count++
и remove()
будет element.count--
например).