我必须为项目code
执行B+Tree
并遇到一些麻烦。
有2个classes
,其中一个是Leaf
,用于保存数据,还有一个名为class
的{{1}}(包含数据和Node
到leafs)。 pointers
包含更多Classes
,members
,prev*
等等......还有next*
。
为了简单起见:
methods
问题是,Node
{
values[];
Leaf*[];
};
Leaf
{
values[];
};
只能将nodes
保存到Leafs,但我想要的是他们还可以将pointers
保存到pointers
(对于上面的图层)。如果Leafs满了,它必须分开。
在上面nodes
中插入value
。此外,如果node
已满,则会拆分,如果没有父node
,则会创建一个。等等。拆分可以通过完整的树传播。
有一个简单的方法吗?拥有node
可以在多个实例中处理不同类型的class
?我是否必须使用模板和多态?