C program of Doubly Link list

Doubly link list is a list in which there is three field first for storing the address of the previous node second for data field and third for the address of the next node. 



Here in this article we will create a doubly Link list and create a function for Insertion Node at first Position and also create a Function for delete Nodes from starting.
Code:-
#include<stdio.h>
#include<stdlib.h>

// function for define the structure of node
struct node
{
int data;
struct node *pre,*next;
};
struct node *head=NULL;
// function for creating the node
struct node *creatnode()
{
struct node* t;
t=(struct node*)malloc(sizeof(struct node));
return(t);
}

// function for insert the node
// at starting for the list
void Insert()
{
struct node *t;
t=creatnode();
printf(“Enter a number “);
scanf(“%d”,&t->data);
t->pre=NULL;
t->next=NULL;
if(head==NULL)
{
head=t;
}
else
{
t->next=head;
head->pre=t;
head=t;
}
}

// function for delete the node
// from the starting
void delete()
{
struct node *t;
if(head==NULL)
printf(“List is Emptyn”);
else
{
t=head;
head=head->next;
head->pre=NULL;
free(t);
}
}

// function for view the list
void viewlist()
{
struct node *t;
if(head==NULL)
printf(“List is Emptyn”);
else
{
t=head;
while(t->next!=NULL)
{
printf(“%d “,t->data);
t=t->next;
}
}
}

// driver function
int main()
{
int ch;
head=creatnode();
while(1)
{
printf(“n Pressn”);
printf(“1. Insertionn”);
printf(“2. deleten”);
printf(“3. View Listn”);
printf(“4. Exitn”);
printf(“Enter Your Choicen”);
scanf(“%d”,&ch);
switch(ch)
{
case 1:
Insert();
break;
case 2:
delete();
break;
case 3:
viewlist();
break;
case 4:
exit(0);
default :
printf(“Invailid key”);
}
}
return 0;
}


Output:-
Press
1. Insertion
2. delete
3. View List
4. Exit
Enter Your Choice 1
Enter a number 12


Press
1. Insertion
2. delete
3. View List
4. Exit
Enter Your Choice 1
Enter a number 34


Press
1. Insertion
2. delete
3. View List
4. Exit
Enter Your Choice
3
34 12


Press
1. Insertion
2. delete
3. View List
4. Exit
Enter Your Choice
2


Press
1. Insertion
2. delete
3. View List
4. Exit
Enter Your Choice 4


Recommended Post:

Key points:-

Cracking the coding interview:-

 Array and string:-

Tree and graph:-

Hackerearth Problems:-

Hackerrank Problems:-

Data structure:-

 MCQs:-

Leave a Reply

Your email address will not be published.