作者jojoboy0115 (jojo)
看板Grad-ProbAsk
标题[理工] 资结 B-tree of order m 之 Delete
时间Mon Oct 29 15:03:27 2018
https://i.imgur.com/NjEGlfV.jpg
如图所示,当key数变多的时候,要去删除某值,请问左右子树要怎麽判断?
若删除20,采左子树最大是用这个区间去取代20吗?
若删除10,采右子树最小是找1去取代吗?如果说,也就是说最左边分支变成了右子树@@?
PS.两个问题独立,没有关连
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 49.215.130.217
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1540796610.A.AA8.html
1F:推 rycheal: 删除20,采左子树最大:用14补10/29 15:16
2F:→ rycheal: 删除10,采右子树最小:用12补10/29 15:16
3F:→ rycheal: 如果两题是独立的题目就这样补10/29 15:19
4F:→ rycheal: 不过如果是先删20,再删10的话,因为原(12,14)那格变成空 10/29 15:19
5F:→ rycheal: ,就得再调整10/29 15:19
6F:→ jojoboy0115: 不好意思我修改一下,两题是独立的@@ 10/29 15:29
※ 编辑: jojoboy0115 (49.215.130.217), 10/29/2018 15:30:06
7F:→ jojoboy0115: 所以他其实是有区间的,10要从右子树找最小,要大於1 10/29 15:32
8F:→ jojoboy0115: 0的最小 10/29 15:32