根据前序/后序遍历和中序遍历序列建树
Posted yy-1046741080
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据前序/后序遍历和中序遍历序列建树相关的知识,希望对你有一定的参考价值。
根据前序遍历和中序遍历序列建树:
1 // 先序序列pre[preL,preR],中序序列in[inL,inR] 2 node* BuildTree(int preL,int preR,int inL,int inR) 3 if(preL>preR) 4 return NULL; 5 6 node *root=new node; 7 root->data=pre[preL]; 8 int k; 9 for(k=inL;in[k]!=pre[preL];k++) 10 ; 11 12 root->left=BuildTree(preL+1,preL+k-inL,inL,k-1); 13 root->right=BuildTree(preL+k-inL+1,preR,k+1,inR); 14 15 return root; // 返回 16
根据后序遍历和中序遍历序列建树:
以上是关于根据前序/后序遍历和中序遍历序列建树的主要内容,如果未能解决你的问题,请参考以下文章
C语言根据层次遍历和中序遍历求二叉树的前序遍历和后序遍历。下面有我的建树函数,有注释的。
数据结构中已知前序序列和中序序列,怎么得出后序序列,谢谢回答!