Доведення, що двійкове дерево має не більше


14

Я намагаюся довести, що бінарне дерево з вузлами має щонайбільше . Як би я міг робити це з індукцією?nn2

Для людей, які стежили в оригінальному питанні про купи, це було перенесено сюди .


3
По-перше, зауважте, що тут ми можемо використовувати LaTeX. Клацніть «редагувати», щоб побачити, як я це зробив. По-друге, я не бачу індукції. Ви кидаєте туди кілька цифр, але немає доказової структури і взагалі немає відношення до купи. Чи можете ви її покращити? І нарешті, твердження неправильне: відсортований список відповідає властивості купи та має лише один аркуш. Ви залишили якісь припущення?
Рафаель

Чи редагує @ Kaveh те, що ви мали на увазі, тобто "щонайбільше"?
Рафаель

@Raphael, читаючи запитання ще раз, я думаю, що це може бути про купи, де кожен внутрішній вузол має рівно двох дітей (у такому випадку оригінальне запитання має сенс, а твердження правильне чи щось подібне).
Kaveh

1
@Kaveh Ага так, я бачу вашу плутанину. У вузлах купи є максимум двоє дітей (звідси і бінарне тег)
varatis

1
Я бачу. З позовом, сформульованим точно, подальших припущень дійсно немає. Власність справді належить до всіх двійкових дерев.
Рафаель

Відповіді:


7

Я припускаю, що питання таке:

Давши двійкове дерево з вузлами, доведіть, що воно містить не більше nnлистя.n2

Давайте попрацюємо з визначенням дерева . Для T такого дерева, нехай п Т число вузлів в Т і л Т число листя в T .Tree=EmptyLeafNode(Tree,Tree)TnTTlTT

Ви правильно це робите за допомогою індукції, але вам знадобиться структурна індукція, яка слід за структурою дерева. Для дерев це часто робиться як повна індукція на висоту дерев.h(T)

Індукційний анкер має дві частини. По-перше, для маємо T = E m p t y при l T = n T = 0 ; претензія чітко стосується порожнього дерева. Для h ( t ) = 1 , тобто T = L e a f , аналогічно маємо l T = 1 = n Th(t)=0T=EmptylT=nT=0h(t)=1T=Leaf, тому претензія стосується листків.lT=1=nT2

Гіпотеза індукції така: Припустимо, що твердження справедливо для всіх (бінарних) дерев з h ( T ) k , k 1 довільним, але фіксованим.Th(T)kk1

Для індуктивного кроку розглянемо довільне бінарне дерево з h ( T ) = k + 1 . Як k 1 , T = N o d e ( L , R ) і n T = n L + n R + 1 . Оскільки L і R також є двійковими деревами (інакше T не було б) і h ( L ) , h (Th(T)=k+1k1T=Node(L,R)nT=nL+nR+1LRT , застосовується і є гіпотеза про індукціюh(L),h(R)k

lLnL2 and lRnR2.

Оскільки всі листя знаходяться або в L, або в R , ми маємо цеTLR

lT=lL+lRnL2+nR2nL+nR+12()=nT2

Нерівність , зазначене може бути перевірено з допомогою (чотири сторони) випадком відмінності по приводу того , п L , п R2 N . Силою індукції це завершує доказ.()nL,nR2N


Як вправу ви можете використовувати ту саму техніку, щоб довести наступні твердження:

  • Кожне ідеальне двійкове дерево висотою має 2 год - 1 вузол.h2h1
  • Кожне повне двійкове дерево має непарну кількість вузлів.

2

Я трохи розгублений питанням. Якщо вас цікавлять дерева, що мають ступінь не більше , а це означає, що у Вікіпедії ви хочете, то ми стикаємося з проблемою, що на одному краї є n = 2 вузли і n = 2 листя, але n / 2 = 1 . У будь-якому випадку, тут є щось близьке, що має простий аргумент. 3n=2n=2n/2=1

Нехай - таке дерево з n вузлами та L листям. Оскільки T - дерево, є n - 1 ребер, і подвійне їх підрахунок, ми бачимо, що 2 n - 2 L + 3 ( n - L ), що говорить про те, що 2 L n + 2 і це щільно в двох -приклад вище. Я думаю, що якщо ви хочете припустити, що існує один корінь ступеня другого і n 3 , то ви можете уточнити цей аргумент, щоб дати 2 LTnLTn1

2n2L+3(nL)
2Ln+2
n3
2Ln+1

Я здогадуюсь, ми мовчки припускаємо тут укорінені дерева; Вікіпедія теж робить це.
Raphael

1
Вікіпедія наголошує на тому, що говорить: "Поза деревом часто є посилання на" кореневий "вузол (родоначальник усіх вузлів), якщо він існує". У будь-якому випадку, цей аргумент, здається, варто записати, оскільки він різний і досить простий.
Луї-

Якщо читати далі, всі краї спрямовані, вони говорять про "дітей" та "батьків". У коренях дерев це не має сенсу. Отже, на листі буде вузол із перевершенням 0.
Рафаель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.