见下
struct node{
bool vis;
int Val,lc,rc,d,fa; //权值 左孩子 右孩子 深度 父亲
}tree[110];
...某行代码
if(tree[u].lc==0) tree[u].lc=v,tree[u].Val=i+1,tree[tree[u].lc].fa=tree[u].lc/*处理父节点*/; //构建树
else tree[u].rc=v,tree[u].Val=i+1,tree[tree[u].rc].fa=tree[u].rc/*处理父节点*/;