Shorted DLL
Shorted DLL
h>
#include<stdlib.h>
struct node {
int data;
};
void create();
void insert_begin();
void insert_after();
void insert_end();
void delete_begin();
void delete_info();
void delete_end();
void display();
void main()
int ch;
system("clear");
while(1)
printf("\n2.insert at beginning");
printf("\n4.insert at end");
printf("\n5.delete at beginnig");
printf("\n7.delete at end");
printf("\n8. display");
printf("\n.9 exit(0)");
printf("enetr your choice\n");
scanf("%d",&ch);
switch(ch)
case 1:create();break;
case 2:insert_begin();break;
case 3:insert_after();break;
case 4:insert_end();break;
case 5:delete_begin();break;
case 8:display();break;
case 9:exit(0);break;
void create(){
int c;
scanf("%d",&ptr->data);
ptr->prev=NULL;
ptr->next=NULL;
head=ptr;
scanf("%d",&c);
while(c==1)
scanf("%d",&cptr->data);
ptr->next=cptr;
cptr->prev=ptr;
cptr->next=NULL;
ptr=cptr;
scanf("%d",&c);
void insert_begin()
scanf("%d",&ptr->data);
ptr->next=head;
ptr->prev=NULL;
head->prev=ptr;
head=ptr;
printf("node inserted");
void insert_end()
scanf("%d",&ptr->data);
while(temp->next!=NULL)
{
temp=temp->next;
ptr->next=NULL;
ptr->prev=temp;
temp->next=ptr;
printf("node inserted\n");
void insert_after()
ptr=malloc(sizeof(struct node));
scanf("%d",&ptr->data);
temp=head;
int i,loc;
printf("enter location");
scanf("%d",&loc);
for(i=1;i<loc;i++)
temp=temp->next;
ptr->next=temp->next;
temp->next=ptr;
ptr->prev=temp;
printf("node inserted");
void delete_begin()
{
ptr=head;
head=ptr->next;
head->prev=NULL;
free(ptr);
printf("node deleted");
void delete_info()
ptr=head;
int i,loc;
scanf("%d",&loc);
for(i=1;i<loc;i++)
temp=ptr;
ptr=ptr->next;
temp->next=ptr->next;
ptr->next->prev=temp;
free(ptr);
printf("node deleted");
void delete_end()
ptr=head;
while(ptr->next!=NULL)
{
temp=ptr;
ptr=ptr->next;
temp->next=NULL;
free(ptr);
printf("node deleted");
void display()
ptr=head;
while(ptr!=NULL)
printf("%d-->",ptr->data);
ptr=ptr->next;