用链表实现树的注意事项(——大犇也会犯的错误)

重要代码:

结构体指针表示树

 struct bin{
    int data;
    bin *lc,*rc;
};
   typedef bin *tree;

树的声明:

 tree bt;
 bt=new bin;

值得注意的地方

	tree bt;		
	bt->data=1;

在创建新树时,只写上面两句是不行的,会报错!!!

  	bt=new bin;

一定要加上面这句话才行

还是创建树:最好把新树不用的值都赋值为NULL

	T->dad=dadT;
    T->data=q[x].a;
    T->lc=NULL;T->rc=NULL;

否则就会有野指针T-lc>dataT-rc>data会被随机赋值;
如果后面有if(T->lc->data==a || T->rc->data==a)这种语句的话,程序就会出错!

你可能感兴趣的:(易错)