[理工] <資工資結> input data好多的AVL樹><

看板Grad-ProbAsk作者 (考過換帳號)時間12年前 (2012/02/09 02:41), 編輯推噓3(305)
留言8則, 1人參與, 最新討論串1/1
大家好~ 做到一題考古題~ 長這樣XD http://ppt.cc/n-!6 老師上課有說如果有value一樣的key可以自己規定左右子樹要放什麼 左右子樹分別放 >=< (註:之前都是左子樹key>root 且右子樹<root) 但是我剛剛出現了這個情況(我是規定左子樹放 >= root的key) 以下為某subtree(現在要insert E) E / \ A L / \ / \ A E I N / / \ B G L \ E 請問該如何rotation呢? 感謝回答^^ (PS: E和E相等我找不到中間值拉上去啊><) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.162.204.241

02/09 10:05, , 1F
這個就LR旋轉 先左旋一次 再右旋一次 最下面的E被當成
02/09 10:05, 1F

02/09 10:05, , 2F
中間值丟上去 E
02/09 10:05, 2F

02/09 10:06, , 3F
B E
02/09 10:06, 3F
感謝回答^^ 可是這樣root E的右子樹就變成 E 了耶 跟一開始規定key要擺的位置不就矛盾了? ※ 編輯: cisco 來自: 1.162.201.235 (02/09 19:33)

02/09 20:09, , 4F
不是把最下面的E丟到root E的右邊喔 是把最下面的E取代
02/09 20:09, 4F

02/09 20:10, , 5F
root E,原本的root E變成新root的右子樹
02/09 20:10, 5F

02/09 20:19, , 6F
哦 我知道你的意思 AVL一般要設成 右邊是 大於等於才會合
02/09 20:19, 6F

02/09 20:20, , 7F
左邊小於~
02/09 20:20, 7F

02/09 20:21, , 8F
一般binary tree才能自己設的樣子
02/09 20:21, 8F
好的~ 感謝您的回答^^ 下次我如果遇到key值相同的都設右邊大於等於好了 不過這題超複雜 考出來老師改考卷大概也眼花XD 謝謝拉~ 祝您金榜題名!! ※ 編輯: cisco 來自: 1.162.201.235 (02/10 01:08)
文章代碼(AID): #1FCi78k3 (Grad-ProbAsk)