非递归:
在这class Solution {
public:
vector<int> inorderTraversal(TreeNode* root)
{
vector<int> vec;
stack <TreeNode*> sta;
TreeNode* ptr = root;
while(NULL != ptr || !sta.empty())
{
while(NULL != ptr)
{
sta.push(ptr);
ptr = ptr->left;
}
ptr = sta.top();
sta.pop();
vec.push_back(ptr->val);
ptr = ptr->right;
}
return vec;
}
};里插入代码片
递归:
void inorderTraversal(TreeNode* T)
{
if(!T)
{
inorderTraversal(T->leftchild);
cout<<T->val<<"";
inorderTraversal(T->rightchild);
}
}