当前位置: 首页 > news >正文

亳州网站开发手机膜+东莞网站建设

亳州网站开发,手机膜+东莞网站建设,手机软件用什么语言开发,华为网站建设建议🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 队列 队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端进行删除删除数据操作的特殊线性表,队列具有先进先出FIFO,…

🌈个人主页:羽晨同学 

💫个人格言:“成为自己未来的主人~”  

队列

队列的概念及结构

队列:只允许在一端进行插入数据操作,在另一端进行删除删除数据操作的特殊线性表,队列具有先进先出FIFO,进行插入操作的一端称为队尾,进行删除操作的一端称为队头

队列的实现

队列也可以数组和链表的结构实现,使用链表的结构实现更优一点,因为如果使用数组的结构,出队列在数组头上出数据,效率会比较低

#pragma once
#include<stdio.h>
#include<stdbool.h>
#include<assert.h>typedef int QDataType;
typedef struct QueueNode
{int val;struct QueueNode* next;
}QNode;typedef struct Queue
{QNode* phead;QNode* ptail;int size;
}Queue;void QueueInit(Queue* pq);
void QueueDestroy(Queue* pq);
//入队列
void QueuePush(Queue* pq, QDataType x);
//出队列
void QueuePop(Queue* pq);QDataType QueueFront(Queue*pq);
QDataType QueueBack(Queue* pq);
bool QueueEmpth(Queue* pq);
int QueueSize(Queue* pq);
#define _CRT_SECURE_NO_WARNINGS
#include"code.4.5.Queue.h"
void QueueInit(Queue* pq) {assert(pq);pq->phead = NULL;pq->ptail = NULL;pq->size = 0;
}void QueueDestroy(Queue* pq)
{assert(pq);QNode* cur = pq->phead;while (cur) {QNode* next = cur->next;free(cur);cur = next;}pq->phead = pq->ptail = NULL;pq->size = 0;
}//入队列
void QueuePush(Queue* pq, QDataType x) {assert(pq);QNode* newnode = (QNode*)malloc(sizeof(QNode));if (newnode == NULL) {perror("malloc fail");return;}newnode->val = x;newnode->next = NULL;if(pq->ptail){pq->ptail->next = newnode;pq->ptail = newnode;}pq->size++;
}
void QueuePop(Queue* pq)
{assert(pq);assert(pq->phead != NULL);if (pq->phead->next == NULL) {free(pq->phead);pq->phead = pq->ptail = NULL;}else{QNode* next = pq->phead->next;free(pq->phead);pq->phead = next;}pq->size--;
}QDataType QueueFront(Queue* pq) {assert(pq);assert(pq->phead != NULL);return pq->phead->val;
}
QDataType QueueBack(Queue* pq) {assert(pq);assert(pq->ptail != NULL);return pq->ptail->val;
}
bool QueueEmpth(Queue* pq)
{assert(pq);return pq->size == 0;
}
int QueueSize(Queue* pq)
{assert(pq);return pq->size;
}
#define _CRT_SECURE_NO_WARNINGS
#include"code.4.5.stack.h"
//int main() {
//	ST s;
//	STInit(&s);
//	STPush(&s,1);
//	STPush(&s,2);
//	STPush(&s,3);
//	int top = STTop(&s);
//	printf("%d", top);
//
//	STDestroy(&s);
//	return 0;
//}
#include"code.4.5.Queue.h"
int main()
{Queue q;QueueInit(&q);QueuePush(&q, 1);QueuePush(&q, 2);printf("%d ", QueueFront(&q));QueuePop(&q);QueuePush(&q, 3);QueuePush(&q, 4);while (!QueueEmpth(&q)){printf("%d ", QueueFront(&q));QueuePop(&q);}QueueDestroy(&q);return 0;
}

http://www.yayakq.cn/news/55011/

相关文章:

  • 怎么用自己的网站做链轮网络推广是什么工作内容
  • 好搭建网站建设网站建设综合设计
  • 国外网站 dns龙岗做网站的公司
  • 专业做英文网站建设厅投诉网站首页
  • 能看完整舆情报告的软件如何提高网站排名seo
  • 青县有做网站的吗沧州网站制作报价
  • 做号网站设计院
  • 台州千寻网站建设公司为什么网站显示建设中
  • 成都营销网站设计企业邮箱 网站建设
  • 苏州网站优化WordPress 黑镜2.0破解主题
  • 观山湖制作网站企石镇网站建设
  • 青海中小企业网站建设建设一个看电影的网站
  • 湖北地矿建设勘察公司网站做百度推广的公司电话号码
  • 学网页制作的网站扬州西区网站建设
  • 高水平的番禺网站建设python做网站性能
  • 建设网站跟服务器得关系ui展示 网站
  • 山东省城乡与建设厅网站首页以下哪个是专业的网页制作软件
  • 用ps做三网站横幅wordpress上传视频失败
  • 青岛胶州网站建设东莞网站建设制作公司
  • 模仿网站制作wordpress小店主题
  • 网站建设创意报告书施工企业领导带班记录
  • 织梦做单页面网站网站js修改代码
  • 怎么做网站信息阅读网站怎样做
  • 网站名称要求深圳各区房价一览表
  • 株洲市建设网站中企动力免费做网站
  • 网站升级建设招标公告建筑公司对企业未来希望
  • 免费发布推广信息的软件seo扣费系统源码
  • 如何写网站开发需求做一网站多少钱
  • 网站建设123wordpress个人模版
  • 城市规划做底图的网站怀仁有做网站的公司吗