1

我正在创建一个二叉基数树(最长的公共前缀树)。数据仅存储在叶节点中。树层次结构具有内部节点,每个内部节点都有两个子节点。子节点可以是叶节点或内部节点。叶节点和内部节点都存储对父节点的引用。

叶节点存储在一个数组中。内部节点存储在另一个数组中。根节点是内部节点数组的第一个元素

Node
{ 
    Node* parent;
}

LNode: Node
{
  data;
}

INode: Node
{
    Node* leftchild;
    Node* rightchild;
}

假设树结构现在填充为内部节点数组,如果我现在选择树的任何内部节点,我怎么知道内部节点的子节点是内部节点还是叶节点?为此,我正在考虑为每个子节点存储一个布尔变量,以将其标记为前导节点或内部节点。但这在我看来并不是一个好的解决方案。

谁能建议我一个更好的方法来做到这一点?

4

0 回答 0