У мене таке питання, але відповіді на це не маю. Буду вдячний, якщо мій метод правильний:
З. Під час пошуку ключового значення 60 у двійковому дереві пошуку, вузли, що містять ключові значення 10, 20, 40, 50, 70, 80, 90, переміщуються, не обов'язково в заданому порядку. Скільки можливих різних порядків, у яких ці ключові значення можуть виникати на шляху пошуку від кореневого вузла, що містить значення 60?
(A) 35 (B) 64 (C) 128 (D) 5040
З питання я розумію, що всі задані вузли повинні бути включені в обхід, і в кінцевому підсумку ми повинні досягти ключа, 60. Наприклад, одна така комбінація була б:
10, 20, 40, 50, 90, 80, 70, 60.
Оскільки нам належить пройти всі наведені вище вузли, ми повинні почати або з 10, або з 90. Якщо ми почнемо з 20, ми не досягнемо 10 (оскільки 60> 20 і ми будемо переходити право піддерево 20)
Так само ми не можемо почати з 80, оскільки нам не вдасться досягти 90, оскільки 80> 60 ми будемо переходити в ліве підгрупу 80 і, таким чином, не досягаючи 90.
Давайте візьмемо 10. Решта вузлів - 20, 40, 50, 70, 80, 90. Наступний вузол може бути або 20, або 90. Ми не можемо взяти інші вузли з тієї ж раніше зазначеної причини.
Якщо ми розглянемо аналогічно, на кожному рівні у нас є два варіанти. Оскільки є 7 вузлів, два варіанти для першого 6 і жодного вибору для останнього. Так що є тотально
перестановки = =
Це правильна відповідь?
Якщо ні, то який краще підхід?
Я хотів би узагальнити. Якщо вказано вузлів, то загальна кількість можливих шляхів пошуку складе