Вы не указали, как будете реализовывать итератор.Итератор - это просто интерфейс, а не конкретная реализация.
Поиск в BST занимает O (log n) время, что означает, что в любой момент времени поиск следующего узла должензанять O (журнал N) время.
Объяснение: Следующий узел всегда является наименьшим элементом в правом поддереве или родительским узлом текущего узла.В любом случае, это не займет более log n времени.
Если ваша итерационная реализация не займет менее O (log n) времени, рекурсия будет быстрее.
Редактировать: Мне нужно указать, что здесь обозначение O для среднего случая, а не для худшего.Однако при условии, что у вас достаточно сбалансированное дерево, log n все равно должно применяться.