我有以下。该结构是原型的,因此可以正常编译。
struct vertexNodeInfo
{
vector<vertexNodeInfo> node;
};
我正在尝试写一个八叉树的东西。我想要做的是使用递归函数继续向每个节点添加一个节点,直到我到达一个特定点,此时该函数而不是添加另一个节点,而是添加一个叶子。如果可能的话,我想在没有添加更多节点或叶子时不使用内存。
也许模板在这种情况下会有所帮助,但我不知道如何使用它们......
我认为我没有很好地解释自己。这是一个图表:
我不知道我所要求的内容是不可能的,还是太混乱而无法理解,或者只是愚蠢的,但我自己无法弄清楚。对不起,我无法更好地解释它。
我正在使用 C++98/03 (VC++2008) 并且不能使用 C++11
任何帮助都将不胜感激。
附加信息:
更好的解释:我想要一个数组数组的数组数组。内存使用在这方面非常重要(我存储了数百万个元素,因此单个字节会产生巨大的差异)。每个数组可以包含 8 个以上的数组,但在我需要使用它之前,我希望每个数组都不使用内存。这是一个八叉树。
更多附加信息:
这是另一个图表。它有点大,因此您可能需要右键单击它并选择Open image in new tab
使其可读。
我不想要的是“棕色”(红色+绿色)框,其中每个框都为更多节点和叶数据保留内存。这将使用太多的内存来满足我的需求。
这基本上是我想要实现的目标,为简单起见,如图 2D 所示: