6_34_扩展判断u是否为v的子孙
#include<stdio.h> int L[6+1]={0,2,4,0,6,0,0}; int R[6+1]={0,3,5,0,0,0,0}; int T[6+1]; int n=6; void TransTo() { int i; for(i=1;i<=n;i++) { T[L[i]]=i; T[R[i]]=i; } T[0]=0; } int IfSon(int u,int v) { if(!u)return 0; if(T[u]==v) return 1; else return IfSon(T[u],v); } int main() { TransTo();int i; printf("%d\n",IfSon(5,3)); }
版权声明:本文为博主原创文章,未经博主允许不得转载。