Индексатор в бинарном дереве поиска C#
Сделал бинарное дерево поиска на C#, есть перечисление (IEnumerable
) элементов в порядке возрастания.
Нужно сделать индексатор (this[int i]
) который бы возвращал i
-й по порядку элемент, при этом сложность должна быть O(h)
, где h
- высота дерева.
Нельзя просто возвращать this.ElementAt(i)
, так как при этом сложность будет O(n)
, где n
- количество элементов в дереве.
Источник: Stack Overflow на русском