Skip to main content

Double Linked list

 



#include <stdio.h>
#include<stdlib.h>


struct node{
    int data;
    struct node *prev;
    struct node *link;
};

void display(struct node *ptr){
    while(ptr!=NULL){
        printf(" %d ",ptr->data);
        ptr = ptr->link;
    }
}


int main()
{
    struct node *a;
    struct node *b;
    struct node *c;
    struct node *d;
 
   
    a = malloc(sizeof(struct node));
    b = malloc(sizeof(struct node));
    c = malloc(sizeof(struct node));
    d = malloc(sizeof(struct node));
   


    a->prev = NULL;
    a->data = 1;
    a->link = b;

    b->prev = a;
    b->data = 2;
    b->link = c;

    c->prev = b;
    c->data = 3;
    c->link = d;

    d->prev = c;
    d->data = 4;
    d->link = NULL;

display(a);

   
    return 0;
}


Comments