用户管理用例图
2020-01-06 21:58:22 0 举报
办卡充值
作者其他创作
大纲/内容
2:[检验是否完成] 如果N为根结点,则停止操作。
4:[向上传递结点分裂] 如果N有一个刚刚被分裂产生的结点NN,则创建一个指向NN的条 目ENN。如果P有空间来存放ENN,则将ENN添加到P中。如果没有,则对P进行 SplitNode操作以得到P和PP。
1:[找到含有记录的叶子结点] 使用FindLeaf方法找到包含有记录E的叶子结点L。如果搜索 失败,则直接终止。
3:[调整父结点条目的最小边界矩形] 设P为N的父节点,EN为指向在父节点P中指向N的 条目。调整EN.I以保证所有在N中的矩形都被恰好包围。
4:[下降至叶子结点] 将N设为F,从2开始重复操作。
1:[Initialize]设置N为根结点。
Algorithm Delete(将一条记录E从指定的R树中删除)
2:[搜索叶子结点以找到记录] 如果T是叶子结点,那么检查每一个条目是否有E在, 如果有则返回T。
3:[选择子树] 如果N不是叶子结点,则遍历N中的结点,找出添加E.I时扩张最小的结点,并 把该结点定义为F。如果有多个这样的结点,那么选择面积最小的结点。
2:[叶子结点的检查] 如果N为叶子结点,则直接返回N。
3:[传递记录] 对L使用CondenseTree操作。
Algorithm ChooseLeaf(选择叶子结点以放置新条目E)
Algorithm AdjustTree(叶子结点的改变向上传递至根结点以改变各个矩阵。在传递变换的过程中可能会产生结点的分裂)
2:[删除记录] 将E从L中删除。
1:[搜索子树] 如果T不是叶子结点,则检查每一条T中的条目F,找出与E所对应的矩 形相重合的F(不必完全覆盖)。对于所有满足条件的F,对其指向的孩子结点进 行FindLeaf操作,直到寻找到E或者所有条目均以被检查过。
4:[缩减树] 当经过以上调整后,如果根结点只包含有一个孩子结点,则将这个唯一的孩子 结点设为根结点。
5:[升高至下一级] 如果N等于L且发生了分裂,则把NN置为PP。从AT2开始重复操作。
1:[初始化] 将N设为L。
Algorithm FindLeaf(根结点为T,期望找到包含有记录E的叶子结点)
0 条评论
回复 删除
下一页