#include<stdio.h>
#include<stdlib.h>
struct NODE{
int data;
struct NODE *left,*right;
};
typedef struct NODE *TreeNode;
TreeNode create(int x)
{
TreeNode newnode;
newnode=(struct NODE*)malloc(sizeof(struct NODE));
newnode->data=x;
newnode->left=NULL;
newnode->right=NULL;
return newnode;
}
TreeNode Insert(TreeNode root,int x)
{
if(root==NULL)
{
root=create(x);
}
else if(x<=root->data)
{
root->left=Insert(root->left,x);
}
else
{
root->right=Insert(root->right,x);
}
return root;
}
void PrePrint(TreeNode t)
{
if(t)
{
printf("%d,",t->data);
PrePrint(t->left);
PrePrint(t->right);
}
}
int main()
{
int n,i,x;
TreeNode tree=NULL;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
tree=Insert(tree,x);
}
PrePrint(tree);
return 0;
}
//实现简单的构造和前遍历