以给出的序列为插入序列,构造树,然后对比。
二叉搜索树的构造,先、后序遍历的递归写法。
#include <cstdio>
#include <vector>
using namespace std;
struct node{
int data;
node *left, *right;
};
vector<int> pre, pre_mirror, post;
void insert_tree(node* &root, int e);
node* create_tree(int a[], int n);
void pre_order_BST(node *root);
void pre_order_BST_mirror(node *root);
void post_order_BST(node *root);
void post_order_BST_mirror(node *root);
int seq_judge(int a[], int n);
int main(){
int N;
scanf("%d", &N);
int insert_seq[N];
for(int i=0; i<N; i++) scanf("%d", &insert_seq[i]);
node *root = create_tree(insert_seq, N);
pre_order_BST(root);
pre_order_BST_mirror(root)