根据先序遍历的结果还原二叉搜索树

根据二叉搜索树的特性,利用先序遍历的结果可以唯一地还原整棵树,因为先序遍历的顺序与中序遍历排序后的顺序一致。在实际编程中,这种方法可能会导致部分数据超时,具体原因待查。
摘要由CSDN通过智能技术生成

又二叉树的特征,知道先序遍历的输出和中序遍历的输出,就可以还原一颗唯一的树。而在
二叉搜索树中,中序遍历恰恰是将先序遍历排序后的结果。所以给出先序遍历的输出结构,便可以
还原这棵二叉搜索树。

My Code

#include<iostream>
#include<stdio.h>
#include<vector>
#include<map>
#include<algorithm>
using namespace std;

const int maxn = 1009;
int pre[maxn];	//preorder
int mid[maxn];	//indorder
map<int,int> index; //index of value maxn in mid[]

//define the node of tree
struct Node{
   
	int val;
	Node *ls, *rs
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值