算法思想:由于线性表有序,值相同的元素一定在逻辑上相邻,设置两个指针遍历链表,删除值相同的元素即可。
void Del_same(LinkList &L){
LNode *pre=L->next;//设置一个指针指向第一个结点
LNode *q=pre->next;//设置一个指针指向第二个结点
while(q!=NULL){//如果非空继续比较
if(pre->data=q->data)
p->next=q->next;
free(q);
q=pre->next;
//如果元素值相等删除q
else
p=p->next;
pre=pre->next;//如果元素值不等依次后移
}
}