Пожалуйста, отметьте домашние вопросы с помощью тега homework
. Чтобы успешно сдать итоговый экзамен, я предлагаю вам изучить этот материал, но я здесь не для того, чтобы судить вас.
1) Требуется O (n) для итерации от первого до последнего. Для вставки в двоичное дерево требуется O (lg n), поэтому алгоритм, который вы показали, в лучшем случае принимает O (n lg n).
Худший случай вставки в двоичное дерево - это когда дерево действительно длинное, но не очень густое; похож на связанный список. В этом случае потребуется O (n) для вставки, поэтому в худшем случае потребуется O (n ^ 2).
2) Лучший вариант: [4, 2, 6, 1, 3, 5, 7], худший вариант: [1, 2, 3, 4, 5, 6, 7]
3) Используйте индекс n / 2 в качестве корня, затем рекурсивно сделайте это для левой и правой сторон массива.
4) O (n lg n) в лучшем и худшем случаях.
Надеюсь, это поможет.