Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- typedef struct node Node;
- struct node
- {
- int data,node_no;
- Node *next;
- Node *prev;
- };
- int main()
- {
- int i;
- char item;
- Node *start = NULL,*ptr;
- for(i=0; i<4; i++)
- {
- Node *new_Node = (Node*)malloc(sizeof (Node));
- new_Node->node_no = i+1;
- if(new_Node == NULL)
- {
- printf("Overflow.");
- }
- else
- {
- fflush(stdin);
- scanf("%c",&item);
- new_Node->data = item;
- new_Node->next = NULL;
- new_Node->prev = NULL;
- if(start==NULL)
- {
- start = new_Node;
- ptr = new_Node;
- }
- else
- {
- ptr->next = new_Node;
- new_Node->prev = ptr;
- ptr = new_Node;
- }
- }
- }
- int loc;
- printf("Enter the node no you want to delete : ");
- scanf("%d",&loc);
- ptr = start;
- while(ptr!=NULL)
- {
- if(ptr->node_no==loc)
- {
- break;
- }
- ptr = ptr->next;
- }
- ptr->prev->next=ptr->next;
- ptr->next->prev=ptr->prev;
- Node *ptrf;
- ptrf = ptr;
- while(ptr!=NULL)
- {
- ptr->node_no = loc++-1;
- ptr = ptr->next;
- }
- free(ptrf);
- ptr = start;
- while(ptr!=NULL)
- {
- printf("Node no %d : %c\n",ptr->node_no,ptr->data);
- ptr = ptr->next;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement