void pur_LinkList ( LinkList H ) { LNode *p,*q,*r; p=H->next; /*p指向第一个结点*/ if ( p==NULL ) return; while ( p->next ) { q=p; while ( q->next ) /* 从*p的后继开始找重复结点*/ { if ( q->next->data==p->data ) { r=q->next; /*找到重复结点,用r指向,删除*r */ q->next=r->next; free ( r ); } /*if*/ else q=q->next; } /*while(q->next)*/ p=p->next; /*p指向下一个,继续*/ } /*while(p->next)*/ }