linkedlist
linkedlist
Program:
#include<stdlib.h>
#include<stdio.h>
struct node{
int data;
struct node *next;
};
struct node *head, *curr ,*p;
void create(){
char c;
head=NULL;
do{
if(head==NULL) head=curr;
if(c=='y'||c=='Y'){
}while(c=='y'||c=='Y');
//printf("%p", head);
curr->next=NULL;
}
void display(struct node* mover){
while(mover!=NULL){
printf("%d\t" ,mover->data);
mover=mover->next;
}
printf("\n");
}
}
void search(int num , struct node *mover){
}
void insert(struct node* mover,int c ){
int pos ,count=0 ,num;
do{
switch(c){
case 1:p->next=head;
head=p;
display(head);
break;
case 2:mover=head;
while(mover->next!=NULL){
mover=mover->next;
}
mover->next=p;
display(head);
break;
case 3:printf("Enter the index where to insert: ");
scanf("%d", &pos);
mover=head;
while(mover!=NULL){
count++;
mover=mover->next;
if(count==pos-1) {
p->next=mover->next;
mover->next=p;
break;
}
}
display(head);
break;
mover=mover->next;
}
p->next=mover->next;
mover->next=p;
display(head);
break;
default : exit(0);
}while(c!=5);
free(p);
}
void delete(struct node* mover,int d){
}
int main(){
int c,num,choice;
create();
do{
printf("\n***********MENU************\n");
printf("1.Display\n2.search\n3.delete\n4.Insert\n5.Exit\n");
scanf("%d",&choice);
switch(choice){
case 1:display(head);
break;
case 2:
printf("Enter no to search: ");
scanf("%d", &num);
search(num ,head);
break;
case 4:
printf("INSERTION\n1.First\n2.last\n3.Anywhere\n4.Using number\n");
printf("Enter the choice : ");
scanf("%d",&c);
insert( head , c );
break;
case 5:exit(0);
}
}while(c!=5);
return 0;
}
Output:
PS D:\Anushka\college\DSA> c
***********MENU************
1.Display
2.search
3.delete
4.Insert
5.Exit
2
Enter no to search: 56
Found at 3
***********MENU************
1.Display
2.search
3.delete
4.Insert
5.Exit
3
***********MENU************
1.Display
2.search
3.delete
4.Insert
5.Exit
5