看板 Grad-ProbAsk 關於我們 聯絡資訊
題目要AVL平衡 50 / 18 / 解答: step1: 50 step2: 15 / 15 / 15 ---> /\ 3 / \ 3 50 3 18 \ 18 剛開始知道是LL所以調兒子上來,之後解答在step1又說是LL,所以15在調上來 難道我不能在step1說是LR然後調孫子18上來嗎變成 18 / \ 15 50 / 3 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.124.201.30
IDontBite:第二步LL也不會變成那樣 18是50的左子 02/20 17:03
IDontBite:照題目看來這不是由AVL Tree插入或刪除後產生的, 02/20 17:06
IDontBite:只是要你調成合法的AVL Tree所以你那樣應該可以 02/20 17:06
lovefo:應該再插入3時就要 LL對吧? 02/20 17:07
gn00618777:題目一開始就給你這個圖了,沒有插入順序 02/20 17:33
polomoss:如果一開始就給這張圖~有下往上做 02/20 18:19
polomoss:我懂意思了~這哪間學校的? 通常插入3前就要調整 02/20 18:20
polomoss:還沒做過連續調整個,可以查查看有沒有任給一棵BT tree 02/20 18:20
polomoss:然後連續調整到AVL~通常LL LR等判斷,是程式設計者寫的 02/20 18:21
gn00618777:元智電機(數位科技所),在step1到step2之前,可以有 02/20 18:22
gn00618777:LL和LR兩種方式,只是我不知到要用哪一種 02/20 18:24
polomoss:我猜是LL~因為你掃data一定從左下掃,會先看到LL 02/20 18:26
gn00618777:是看自己要用什麼走法嗎? 02/20 19:40
polomoss:我是覺得是這樣~搜尋方式取決於你程式寫法~ 02/20 19:56
EntHeEnd:解答錯了吧 18不會在15左子樹... 02/21 00:14