在C++中設計樹節點(TreeNode)可以使用類來表示,一個基本的樹節點可以包含以下幾個成員變量:
template <typename T>
class TreeNode {
public:
T data; // 節點數據
TreeNode<T>* left; // 左子節點指針
TreeNode<T>* right; // 右子節點指針
TreeNode(T val) : data(val), left(nullptr), right(nullptr) {}
};
這里使用了模板類來表示通用的樹節點,其中包含節點的數據(data)、左子節點指針(left)和右子節點指針(right)。可以根據具體的需求添加其他成員變量或方法。
如果需要支持多叉樹,可以使用一個vector來存儲子節點的指針:
template <typename T>
class TreeNode {
public:
T data; // 節點數據
vector<TreeNode<T>*> children; // 子節點指針數組
TreeNode(T val) : data(val) {}
};
這樣就可以支持任意數量的子節點,可以根據具體的場景選擇適合的設計方式來表示樹節點。