#include<stdio.h>
#include<stdlib.h>
typedef int ElemType;
typedef struct DoubleLinkedList
{
ElemType data;
struct DoubleLinkedList *pre;
struct DoubleLinkedList *next;
}DlinkedList_Node;
//建立链表
DlinkedList_Node* create_dlink()
{
DlinkedList_Node *head,*p,*s;
int x;
head = (DlinkedList_Node*)malloc(sizeof(DlinkedList_Node));
p = head;
while(1)
{
printf("请输入要保存的节点, 以0结束输入:\n");
scanf("%d",&x);
if(x != 0)
{
s = (DlinkedList_Node*)malloc(sizeof(DlinkedList_Node));
s ->data = x;
s-> pre = p;
p->next = s;
p=s;
}
数据结构之---c语言实现双向链表操作
最新推荐文章于 2024-07-04 11:06:26 发布
本文介绍了如何使用C语言创建、打印、删除和插入双向链表。通过`create_dlink()`函数建立链表,`print_dlink()`进行正序和反序打印,`delete_dlinkedlist_node()`删除指定元素,`insert_dlinkedlist_node()`插入节点。代码示例详细展示了这些操作的实现过程。
摘要由CSDN通过智能技术生成