C++/代码:
class Solution { public: TreeLinkNode* GetNext(TreeLinkNode* pNode) { if(pNode->right) { pNode = pNode->right; //此节点是否有右子树 while(pNode->left) pNode = pNode->left; //寻找右子树最左的节点数,最左节点就是其下一个节点 return pNode; } //无右节点 else { while(pNode->next && pNode == pNode->next->right) pNode = pNode->next; //判定是不是父亲的右节点,和一直是右节点 return pNode->next; } } };