2015-d-二-2


//天勤p141原题
typedef struct 
{
    BTNode *p;
    int lno;
}st;
int maxNode(BTNode *b)
{
    //新队列初始化
    st que[maxSize];
    int front,rear;
    front=rear=0;
    //辅助变量
    int lno,i,j,n=0,max=0;
    BTNode *q;
    if(b!=NULL)
    {
       ++rear;
       que[rear].p=b;
       que[rear].lno=1; 
       while(front!=rear)
       {
           ++front;
           q=que[front].p;
           lno=que[front].lno;
           if(q->lchild!=NULL)
           {
               ++rear;
               que[rear].p=q->lchild;
               que[rear].lno=lno+1;
           }
           if(q->rchild!=NULL)
           {
               ++rear;
               que[rear].p=q->rchild;
               que[rear].lno=lno+1;
           }
       }
       for(i=1;i<=lno;i++)
       {
           for(j=1;j<=rear;++j)
               if(que[j].lno==i) ++n;
           if(max<n) max=n;
       }
       return max;
    }
    return 0;
}