您的位置:首页 > 其它

Binary Tree Inorder Traversal 二叉树中序遍历,使用堆栈,非递归

2014-12-04 09:54 387 查看
/**

* Definition for binary tree

* struct TreeNode {

* int val;

* TreeNode *left;

* TreeNode *right;

* TreeNode(int x) : val(x), left(NULL), right(NULL) {}

* };

*/

class Solution {

public:

vector<int> inorderTraversal(TreeNode *root)

{

vector<int>vect;

if(root==NULL)

{

return vect;

}

stack<TreeNode *>stk;

TreeNode *p=root;

while(p!=NULL||!stk.empty())

{

while(p!=NULL)

{

stk.push(p);

p=p->left;

}

if(!stk.empty())

{

p=stk.top();

vect.push_back(p->val);

stk.pop();

p=p->right;

}

}

return vect;

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐