資源簡介
二叉樹已知后序和中序遍歷求前序遍歷,C++編寫已通過編譯
代碼片段和文件信息
#include?
#include?“stdio.h“
using?namespace?std;
class?BinarytreeNode
{
??????public:
?????????????int?data;
?????????????BinarytreeNode?*left;
?????????????BinarytreeNode?*right;
?????????????BinarytreeNode(int?value=0?BinarytreeNode?*l=NULLBinarytreeNode?*r=NULL):data(value)left(l)right(r)
?????????????{}
?????????????
};
BinarytreeNode*?createtree(int?*in?int?*post?int?n)//還是用根去分割中序?
{
???if(n==0)?return?NULL;
???int?k=n-1;
???while(post[n-1]!=in[k]){k--;}//與前序時基本一樣,只是從后面開始找的,因為根在最后面?
???BinarytreeNode?*rootelement=new?BinarytreeNode(post[n-1]);
???rootelement->left
評論
共有 條評論