Бинарное дерево поиска хранится таким образом, что если вы выполните первый обход глубины, вы найдете элементы в отсортированном порядке (при условии, что у вас есть согласованная функция сравнения). Большая О простого возврата предметов, уже находящихся в дереве, будет Большой О пройденного дерева.
Вы правы насчет хеш-таблиц, они не отсортированы. Фактически, для того, чтобы перечислить все в простой хеш-таблице, вы должны проверить каждый сегмент, чтобы увидеть, что там, вытащить его, а затем отсортировать то, что вы получите. Много работы, чтобы получить отсортированный список из этого.