Экзамен вопрос о вставке в пустой двоичного дерева поиска

голоса
4

У меня возникли проблемы интерпретации определенного вопроса о вставке элементов в дерево двоичного поиска. Я знаком с предзаказа, postorder и заказовМои обходов, но я не знаком со следующим вопросом:

Предположим, что мы вводим элементы 3, 5, 6, 1, 2, 4, 7 в таком порядке в первоначально пустую двоичного дерева поиска.

Если я только дал набор чисел, которые вводятся в таком порядке, как я должен сделать это в бинарное дерево поиска? будет ли 3 корень? И я бы просто сбалансировать другие цифры в правильном поддерева сам? не было бы бы много интерпретаций в этом случае? Есть некая условность, что следует?

Благодарю.

Задан 26/06/2011 в 13:20
источник пользователем
На других языках...                            


3 ответов

голоса
2

Без какой-либо дополнительной информации о правилах о том, как дерево должно быть сбалансировано, я бы предположить, что он имеет в виду «наивной» несбалансированного дерева.

Так что это:

         3
  /-----/ \-----\
 1               5
  \--\       /--/ \--\
      2     4         6
                       \-\
                          7
Ответил 26/06/2011 в 13:26
источник пользователем

голоса
1

Да, 3 будет корень, потому что после первого введения всего дерево имеет только один элемент. Сохраняя ту же логику, если (число, слева, справа) представляет собой узел, вы получите:

  1. (3 ,,)

  2. (3 ,, (5 ,,))

  3. (3 ,, (5 ,, (6 ,,)))

  4. (3, (1 ,,), (5 ,, (6 ,,)))

  5. (3, (1, 2), (5 ,, (6 ,,)))

  6. (3, (1, 2), (5, (4 ,,), (6 ,,)))

  7. (3, (1, 2), (5, (4 ,,), (6, 7)))

Ответил 26/06/2011 в 13:26
источник пользователем

голоса
4

При добавлении элемента в дерево, существующее дерево не заказано. Новый элемент добавляется только к листовому узлу. Это означает, что при первом добавлении 3, 3 будет корневой узел результата. При добавлении 5, он будет находиться справа от 3 и т.д. Это приводит к следующему дереву:

   3
 /   \
1     5
 \   / \
  2 4   6
         \
          7
Ответил 26/06/2011 в 13:29
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more