发布时间:2025-04-23 20:05:11 点击量:
HASH GAME - Online Skill Game GET 300
1.插入方法 (1)首先要经过一个从树根结点到叶子结点的查找过程, 如果键值k已在树中,则不用做其他事;否则,找出插入位置, 然后再进行插入。 (2)对于叶子结点处于第(h1)层的树,插入的位置总是在 第h层。若结点的关键字值个数不超过(m-l),直接把键值插 就行了;否则需要把结点分裂成两个。 (3)分裂的做法是,取一新结点,把原结点上的键和k按升 序排序后,从中间位置(即┌m/2┐之处)把键值(不包括中间 位置的键值)成两部分,左部分所含键值放在旧结点中,右部 分所含键值放在新结点中,中间位置键值连同新结点的存 储位置插入到父亲结点中。如果父结点的键值个数也超过 (m-l),要再分裂,再往上插,直至这个过程传到根结点为止。
其中,①k1,k2,...,kn为n个按从小到大顺序排列的关键字; ②p0,pl,p2,...,pn为(n1)个指针,用于指向该结点的(nl) 棵子树,p0所指向子树中的所有关键字的值均小于kl,pn所指 向子树中的所有关键字的值均大于kn,pi(1≤i≤n-1)所指向子 树中的所有关键字的值均大于ki且小于ki1; ③n(n≤m-1)为键值的个数,即子树个数为(nl)。 (2)树中每个结点至多有m棵子树。 (3)除非根结点为叶子结点,否则至少有两棵子树。 (4)除根之外的所有非终端结点至少有┌m/2┐棵子树。 1 (5)所有叶子结点在同一个层次上,且不含有任何信息。