数据结构严蔚敏----链队列基本操作9个

编程语言:C编译环境:Dev-C++队列是一种只允许在表的一端(队尾rear)进行插入,而在另一端(队头front)进行删除的线性表队列类似生活中的排队队列的链式存储表示:typedef struct QNode{ ElemType data; struct QNode *next;}QNode,*QueuePtr; typedef struct{ QueuePtr front...
摘要由CSDN通过智能技术生成

编程语言:C
编译环境:Dev-C++
队列是一种只允许在表的一端(队尾rear)进行插入,而在另一端(队头front)进行删除的线性表
队列类似生活中的排队
队列的链式存储表示:

typedef struct QNode{
	ElemType data;
	struct QNode *next;
}QNode,*QueuePtr; 
typedef struct{
	QueuePtr front;//队头指针 
	QueuePtr rear;//队尾指针
}LinkQueue; 

源代码:

//实现书P59   ADT Queue 基本操作9个,用链式存储结构实现
//队列是一种只允许在表的一端(队尾rear)进行插入,而在另一端(队头front)进行删除的线性表
//队列类似生活中的排队
//1.Status InitQueue(LinkQueue &Q) 构造一个空队列Q
//  生成头结点,即队头指针front赋值(QueuePtr)malloc(sizeof(QNode)) 判断是否赋值成功,if(!(*Q).front) exit(OVERFLOW);
//  头结点的指针域指向空,令队尾指针(*Q).rear=(*Q).front;return OK;
//2.Status DestroyQueue(LinkQueue &Q) 销毁队列Q,前提Q存在 
//  从队头依次释放空间,具体操作往下看,与单链表的销毁不太一样
//3.Status ClearQueue(LinkQueue *Q) 清空队列Q,前提Q存在 
//  令QueuePtr p指向第一个结点(p=(*Q).front->next),借助辅助指针QueuePtr q
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值