Data redundancy
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct node{
char data[20];
struct node *link;
};
void main()
{
struct node *head=NULL,*ptr=NULL,*temp=NULL,*ptr2,*ptr3,*ptr4,*temp2;
int i,n;
clrscr();
printf("enter the number of nodes\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
temp=(struct node *)malloc(sizeof(struct node));
printf("enter the data in node part\n");
fflush (stdin);
gets(temp->data);
// scanf("%d",&temp->data);
temp->link=NULL;
if(head==NULL)
{ head=temp;
}
else
{
ptr=head;
while(ptr->link!=NULL)
ptr=ptr->link;
ptr->link=temp;
}
}
ptr=head;//sorting algorithm
while(ptr->link!=NULL)
{
ptr2=ptr;
ptr=ptr->link;
ptr3=ptr;
while(ptr3!=NULL)
{
if(strcmp(ptr2->data,ptr3->data)>0)
{
strcpy(ptr4->data,ptr3->data);
strcpy(ptr3->data,ptr2->data);
strcpy(ptr2->data,ptr4->data);
}
ptr3=ptr3->link;
}
}
printf("before reduncy\n");
ptr=head;
while(ptr!=NULL)
{ printf("%s\n",ptr->data);
ptr=ptr->link;
}
ptr=head;
while(ptr->link!=NULL)
{
ptr2=ptr;
ptr=ptr->link;
ptr3=ptr;
while(ptr3!=NULL)
{
if(strcmp(ptr2->data,ptr3->data)==0)
{
temp2=ptr3;
ptr3=ptr3->link;
ptr2->link=ptr3;
temp2->link=NULL;
free(temp2);
ptr=ptr3;
}
else
ptr3=ptr3->link;
}
}
printf("after reduce reduncy\n");
ptr=head;
while(ptr!=NULL)
{ printf("%s\n",ptr->data);
ptr=ptr->link;
}
getch();
}
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct node{
char data[20];
struct node *link;
};
void main()
{
struct node *head=NULL,*ptr=NULL,*temp=NULL,*ptr2,*ptr3,*ptr4,*temp2;
int i,n;
clrscr();
printf("enter the number of nodes\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
temp=(struct node *)malloc(sizeof(struct node));
printf("enter the data in node part\n");
fflush (stdin);
gets(temp->data);
// scanf("%d",&temp->data);
temp->link=NULL;
if(head==NULL)
{ head=temp;
}
else
{
ptr=head;
while(ptr->link!=NULL)
ptr=ptr->link;
ptr->link=temp;
}
}
ptr=head;//sorting algorithm
while(ptr->link!=NULL)
{
ptr2=ptr;
ptr=ptr->link;
ptr3=ptr;
while(ptr3!=NULL)
{
if(strcmp(ptr2->data,ptr3->data)>0)
{
strcpy(ptr4->data,ptr3->data);
strcpy(ptr3->data,ptr2->data);
strcpy(ptr2->data,ptr4->data);
}
ptr3=ptr3->link;
}
}
printf("before reduncy\n");
ptr=head;
while(ptr!=NULL)
{ printf("%s\n",ptr->data);
ptr=ptr->link;
}
ptr=head;
while(ptr->link!=NULL)
{
ptr2=ptr;
ptr=ptr->link;
ptr3=ptr;
while(ptr3!=NULL)
{
if(strcmp(ptr2->data,ptr3->data)==0)
{
temp2=ptr3;
ptr3=ptr3->link;
ptr2->link=ptr3;
temp2->link=NULL;
free(temp2);
ptr=ptr3;
}
else
ptr3=ptr3->link;
}
}
printf("after reduce reduncy\n");
ptr=head;
while(ptr!=NULL)
{ printf("%s\n",ptr->data);
ptr=ptr->link;
}
getch();
}