队列总结

来源:互联网 发布:python 智能模块 编辑:程序博客网 时间:2024/05/09 04:15

       今天做BFS的时候才发现队列这一块其实掌握的还不到位,所以决定在这里把它总结下,这里说的是队列的链表实现。

   队列的特点:

  1,先进先出,后进后出

  2,用链表实现时,有两个指针,一个头指针,一个尾指针,分别指向头部和尾部。

  3,每一个数据块是链表的块,分为数据存储的部分和下一个连接的指针存储next域。

  下面按照课本上的写法再自己写一下并简单写下一些基本的算法。

 

  1,数据块的表示

   typedef struct QNode{

      int data;

     struct QNode *next;

}QNode,*Queuepre;

2,分配连个指针去指导

typedef struct {

Queuepre front;

Queuepre rear;

}LinkQueue;

3,初始化

void InitQueue(LinkQueue &Q){

Q.front=Q.rear=(Queuepre)malloc(sizeof(QNode));

Q.front->next=NULL;

}

4.入队列

void  EnQueue(LinkQueue &Q,int e){

p=(Queuepre)malloc(sizeof(QNode));

p->data=e;

Q.rear->next=p;

Q.rear=p;

}

5,出队列

void DeQueue(LinkQueue &Q,&e){

p=Q.front->next;

e=p->data;

Q.front->next=p->next;

if(p=Q.rear)Q.rear=Q.front;

free(p);

}

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 刷脸认证老失败怎么办 苹果6s字库坏了怎么办 颈椎受凉了很疼怎么办 怀孕了颈椎犯了怎么办 签完协议后悔了怎么办 车秘油耗的数据怎么办 压铸铝模具粘模怎么办 微信红包未退回怎么办 已买的股票配股怎么办 去哪儿网不退款怎么办 专硕学费太贵怎么办 学生饭卡消磁了怎么办 饭卡消磁了钱怎么办 专升本没考上怎么办 平板激活码忘了怎么办 北京买车被骗了怎么办 汽车电池没电了怎么办 汽车完全没电了怎么办 自动挡车没电了怎么办 车缺电打不着火怎么办 车子电脑板坏了怎么办 汽车电脑板坏了怎么办? 小车三角臂坏了怎么办 贵阳摇号中签后怎么办 版面费发票丢了怎么办 当被实名举报了怎么办 玩游戏手老出汗怎么办 智慧树密码忘了怎么办 汽车还完贷款后怎么办 魅蓝note5耗电快怎么办 电脑开机键坏了怎么办 机箱开机键坏了怎么办 起诉后被告不来怎么办 40岁头发全白了怎么办 30岁头发全白了怎么办 领导总是找我茬怎么办 领导想把我整走怎么办 被公司降职降薪怎么办 工作中被降职了怎么办 高中毕业出国留学档案怎么办 汽车智能钥匙丢了怎么办