标签:blog io div log sp amp size c as
#include<stdio.h>
#include<stack>
#include<stdlib.h>
using namespace std;
struct ListNode
{
int data;
ListNode *lchild,*rchild;
};
ListNode* Createbst()
{
int data;
scanf("%d",&data);
if(data!=-1)
{
ListNode* root=(ListNode*)malloc(sizeof(ListNode));
root->lchild=root->rchild=NULL;
root->data=data;
root->lchild=Createbst();
root->rchild=Createbst();
return root;
}
else return NULL;
}
void PreOrder(ListNode *root)
{
stack<ListNode*> s;
ListNode *p=root;
while(p!=NULL || !s.empty())
{
while(p!=NULL)
{
printf("%d",p->data);
s.push(p);
p=p->lchild;
}
if(!s.empty())
{
p=s.top();
s.pop();
p=p->rchild;
}
}
}
int main()
{
ListNode* root;
root=Createbst();
PreOrder(root);
return 0;
}
中序遍历
void PreOrder(ListNode*root)
{
stack<ListNode*>s;
ListNode* p=root;
while(p!=NULL || !s.empty())
{
while(p!=NULL)
{
s.push(p);
p=p->lchild;
}
if(!s.empty())
{
p=s.top();
s.pop();
printf("%d",p->data);
p=p->rchild;
}
}
}
标签:blog io div log sp amp size c as
原文地址:http://www.cnblogs.com/zsboy/p/3946936.html