简单的链队列基本操作

本文介绍了如何使用链表实现链队列,包括初始化、入队、出队和打印队列的操作。通过示例代码展示了如何动态申请空间并利用头尾指针实现先进先出的特性。
摘要由CSDN通过智能技术生成

/*

队列是先进先出的结构  那么使用链表的形式来写队列的话 必须考虑到这一点!

因此需要头尾指针,头尾指针共同构成先进先出的结构特性,利用尾指针进行尾部插入,再利用头指针进行遍历链表,达到先进先出的目的!

链队列的优点就是可以动态申请空间,那么malloc就必须使用上了!

 

*/

#include <stdio.h>
#include <stdlib.h>

typedef struct Qnode{
    int num;
    struct Qnode *next;
}LinkedQnode; 

typedef struct {
    LinkedQnode *front;//头指针
    LinkedQnode *rear;//尾指针
}LinkedQueue;//省略了类名

int InitQueue(LinkedQueue *q){
    q->front=(LinkedQnode *)malloc(sizeof(LinkedQnode));
    if(q->front!=NULL){
        q->rear=q->front;//初始化时,头尾指针共同指向一个空间。
        q->front->next=NULL; //下一个位置设为空
        return true; 
    } 
    else 
        return false;
    
}

int EnQueue(LinkedQueue *q,int x){
    Link

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值