Algorithm 1和2的B+树顺序

Algorithm 1和2的B+树顺序,algorithm,data-structures,b-tree,Algorithm,Data Structures,B Tree,对于顺序为1和2的B+树中插入的最大和最小键数,我感到困惑 在我观看的视频中,有人说除了根节点外,在节点中插入的最大键数至少为m,假设m为顺序,则最多为2m 根据这两条语句,B+树中插入的键的最小和最大数量是多少,顺序为1和2?我不确定上述两种说法是否冲突,或者我误解了什么。有什么想法吗 在没有提及视频的情况下,他们似乎使用了术语顺序的非标准定义,这是造成混淆的原因 树的顺序的标准定义是最大分支因子,即节点可能具有的最大子节点数。因此,在这个定义中,它不是最小值,而是最大值,它不是关于键的数量,

对于顺序为1和2的B+树中插入的最大和最小键数,我感到困惑

在我观看的视频中,有人说除了根节点外,在节点中插入的最大键数至少为m,假设m为顺序,则最多为2m


根据这两条语句,B+树中插入的键的最小和最大数量是多少,顺序为1和2?我不确定上述两种说法是否冲突,或者我误解了什么。有什么想法吗

在没有提及视频的情况下,他们似乎使用了术语顺序的非标准定义,这是造成混淆的原因

树的顺序的标准定义是最大分支因子,即节点可能具有的最大子节点数。因此,在这个定义中,它不是最小值,而是最大值,它不是关于键的数量,而是关于子键的数量

视频的定义意味着最大键数始终为偶数,而实际上没有这样的要求。B+树的最大分支因子很可能为偶数,使得最大键数为奇数

使用术语顺序的标准定义,我们特别对B+树有以下约束:

其内部节点最多有m个子节点。这意味着他们最多有m-1键。 其内部节点至少有m/2个向上舍入的子节点,根节点除外: 如果它的根不是叶子,它可能只有两个孩子。 它的叶子包含实际的数据值。 下面是一个具有顺序4标准定义的示例B+树,它对应于一个B+树,其中键的数量必须介于1和3之间-这与视频的定义不符:

正如您所看到的,这里的节点最多可以有4个子节点,最多可以有3个键。在您的定义中,2m表示最大键数,其顺序实际上是2m+1。因此,您需要使用顺序的标准定义,获得顺序为3和5的B+树的示例

下面是顺序3的示例—B+树的最低可能顺序—这意味着每个节点中的键数必须为1或2:


在没有提及视频的情况下,他们似乎使用了非标准的术语顺序定义,这是造成混淆的原因

树的顺序的标准定义是最大分支因子,即节点可能具有的最大子节点数。因此,在这个定义中,它不是最小值,而是最大值,它不是关于键的数量,而是关于子键的数量

视频的定义意味着最大键数始终为偶数,而实际上没有这样的要求。B+树的最大分支因子很可能为偶数,使得最大键数为奇数

使用术语顺序的标准定义,我们特别对B+树有以下约束:

其内部节点最多有m个子节点。这意味着他们最多有m-1键。 其内部节点至少有m/2个向上舍入的子节点,根节点除外: 如果它的根不是叶子,它可能只有两个孩子。 它的叶子包含实际的数据值。 下面是一个具有顺序4标准定义的示例B+树,它对应于一个B+树,其中键的数量必须介于1和3之间-这与视频的定义不符:

正如您所看到的,这里的节点最多可以有4个子节点,最多可以有3个键。在您的定义中,2m表示最大键数,其顺序实际上是2m+1。因此,您需要使用顺序的标准定义,获得顺序为3和5的B+树的示例

下面是顺序3的示例—B+树的最低可能顺序—这意味着每个节点中的键数必须为1或2:


首先不要添加不相关的标签,这将使您的问题被忽略。这显然不是关于C和Javascript的问题,您的源代码中的术语似乎有点不合适。我习惯于排序,意思是一个节点中的最大键数,因此一个顺序为4的B+树在每个节点中都有2到4个键,根节点可能除外。那么顺序1和2呢?我需要一个示例,因为对于order 1>>min 1,max 2和order 2>>>min 2,最多创建4个键。但是根据你的定义,为了2,阳极中的最大键数是2。有什么想法吗?是的,就是这样,大概是一个顺序1和2的树,我以前从来没有听说过这个词每页有1到2个键。从不要添加不相关的标记开始,这会使你的问题被忽略。这显然不是关于C和Javascript的问题,您的源代码中的术语似乎有点不合适。我习惯于排序,意思是节点中的最大键数,所以a B+
顺序为4的树在每个节点中都有2到4个键,根节点可能除外。那么顺序为1和2的树呢?我需要一个示例,因为对于order 1>>min 1,max 2和order 2>>>min 2,最多创建4个键。但是根据你的定义,为了2,阳极中的最大键数是2。有什么想法吗?是的,就是这样,大概是一个1阶和2阶树,我以前从来没有听说过这个词,每页有1到2个键。