如何用C语言实现在单循环链表上实现删除所有重复的结点,已完成的代码如下:
// 单链表,定义结构体
#include <stdio.h>
#include<stdlib.h>
typedef struct lian_biao{
int data;
struct lian_biao* p_data;
}L;
// 建立单循环链表
L* creat_list(){
L* head=(L*)malloc(sizeof(L));
L *rear=head,*p=NULL;
int input=0;
printf("依次输入,以0结束\n输入第1个元素的值:");
scanf("%d",&input);
while(0 != input){
p=(L*)malloc(sizeof(L));
p->data=input;
rear->p_data=p;
rear=p;
scanf("%d",&input);
}
rear->p_data=head;
return head;
}
求详细解答 谢谢