/*
*程序功能:对双向链表操作,主要包括:插入结点、删除结点、查找结点等基本操作
*需要注意的是,链表中附加了一个结点root_p
*root_p是链表的根节点,root_p中的data字段存储的是当前链表中的总结点个数
*root_p->prev指向链表中第一个存放数据的结点,root_p->next指向链表中最后一个存放数据的结点;
*当链表为空时,root_p->prev和root_p->next都为NULL
*/
<img src="https://img-blog.csdn.net/20141014210038819?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTW9kZXdpc2U=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
#include<stdio.h>
#include<stdlib.h>
struct node
{
struct node *prev; /*指向前一个结点的指针*/
int data;
struct node *next; /*指向后一个结点的指针*/
};
int dll_insert(struct node *root_p, int value); /*插入结点,插入成功返回1,否则返回0*/
int dll_delete(struct node *root_p, int value); /*删除结点,插入成功返回1,否则返回0*/
int dll_member(struct node *root_p, int value); /*查找结点,如果存在返回1,否则返回0*/
void dll_print(struct node *root
C语言---双向链表的插入、删除、查找操作
最新推荐文章于 2023-10-23 22:03:36 发布
本文介绍了一段C语言代码,用于实现双向链表的基本操作,包括插入、删除和查找结点。代码中,链表的根节点root_p包含了链表的总结点数,并且提供了辅助函数进行链表的维护和打印。
摘要由CSDN通过智能技术生成