博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C简单实现双向链表
阅读量:5245 次
发布时间:2019-06-14

本文共 1041 字,大约阅读时间需要 3 分钟。

//链表结构typedef struct DulNode{	DataType data;    //数据	struct DulNode *prior;   //指向前一个节点的指针	struct DulNode *next;    //指向后一个节点的指针}DulNode;//双向链表初始化void InitList(DulNode **h){	(*h) = NULL;}//尾插void PushBack(DulNode *h,DataType x){	DulNode *p;	DulNode *q = h;	p = (DulNode*)malloc(sizeof(DulNode));	if(p == NULL)	{		printf("Memory is false");		return;	}	p->data = x;	q->next = p;	p->prior = q;	p->next = NULL;	q = p;}//双向连表的插入//void PushBack(DulLinkList h,int pos,DataType x)//{//	DulLinkList p = h->next,q;//	int i = 0;//	while(p != h && i < pos-1)//	{//		p = p->next;//		i++;//	}//	if( p == h && i > pos - 1)//	{//		printf("插入位置不合法\n");//		return;//	}//	q = (DulLinkList)malloc(sizeof(DulNode));//	if(q == NULL)//	{//		printf("Memory is false");//		return;//	}//	q->data = x;//	q->prior = p->prior;//	p->prior->next = q;//	q->next = p;//	p->prior = q;//}//打印void Print(){	DulNode *h;	DulNode *p;	InitList(&h);		p = h->next;	while(p)	{		printf("%d->",p->data);		p = p->next;	}	printf("NULL");}
 

转载于:https://www.cnblogs.com/melons/p/5791888.html

你可能感兴趣的文章
centos下同时启动多个tomcat
查看>>
slab分配器
查看>>
分析 PHP大马-php_mof SHELL
查看>>
TCP/IP
查看>>
[推荐] 协同滤波 —— Collaborative Filtering (CF)
查看>>
python中使用中文
查看>>
数据清洗
查看>>
Android 动态加载 (二) 态加载机制 案例二
查看>>
MVC5 + EF6 + Bootstrap3 (10) 数据查询页面
查看>>
Windows下的Eclipse启动出现:a java runtime environment(JRE) or java development kit(JDK) must be.......
查看>>
PLC 通讯
查看>>
【读书笔记】C#高级编程 第三章 对象和类型
查看>>
python之decode、encode及codecs模块
查看>>
使用 Apache Pig 处理数据6
查看>>
Hadoop集群内lzo的安装与配置
查看>>
CASS 7.1 和 AutoCAD 2006的安装使用
查看>>
supervisor之启动rabbitmq报错原因
查看>>
Struts2工作原理
查看>>
二 、Quartz 2D 图形上下文栈
查看>>
[Leetcode Week8]Edit Distance
查看>>