伪代码如下
stack<node*> output;
stack<node*> temp;
node *current = null;
temp.push(root);
while(!temp.isempty())
{
current=temp.pop();
output.push(current);
if current.left != null
temp.push(current.left);
if current.right != null
temp.push(current.right);
}
while (!output.isempty)
(
current=output.pop();
cout<<current.data<<endl;
)