在C++中设计树节点(TreeNode)可以使用类来表示,一个基本的树节点可以包含以下几个成员变量:
templateclass TreeNode { public: T data; // 节点数据 TreeNode * left; // 左子节点指针 TreeNode * right; // 右子节点指针 TreeNode(T val) : data(val), left(nullptr), right(nullptr) {} };
这里使用了模板类来表示通用的树节点,其中包含节点的数据(data)、左子节点指针(left)和右子节点指针(right)。可以根据具体的需求添加其他成员变量或方法。
如果需要支持多叉树,可以使用一个vector来存储子节点的指针:
templateclass TreeNode { public: T data; // 节点数据 vector *> children; // 子节点指针数组 TreeNode(T val) : data(val) {} };
这样就可以支持任意数量的子节点,可以根据具体的场景选择适合的设计方式来表示树节点。