双向循环链表

来源:互联网 发布:弱水三千歌词知乎 编辑:程序博客网 时间:2024/06/11 06:38
#include<stdio.h>#include<stdlib.h>typedef struct node{    int data;    struct node *next;    struct node *prev;}linkloop;linkloop *creat_empty_linkloop(){    linkloop *head;    head = (linkloop *)malloc(sizeof(linkloop));    head->next = head;    head->prev = head;    return head;}int insert_data_linkloop(linkloop *head,int data){    linkloop *temp;    temp = (linkloop *)malloc(sizeof(linkloop));    temp->data = data;    temp->next = head->next;    head->next->prev = temp;    head->next = temp;    temp->prev = head;    return 0;}int print_data_linkloop(linkloop *head){    linkloop *p = head -> next;    while(p != head)    {        printf("%d ",p->data);        p = p->next;    }    printf("\n");}int main(int argc, const char *argv[]){    linkloop *head;    head = creat_empty_linkloop();    int i;    for(i = 1;i <= 5;i ++)    {        insert_data_linkloop(head,i);    }    print_data_linkloop(head);    return 0;}
原创粉丝点击