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

网站建设专家是干嘛的暴雪网易最新消息

网站建设专家是干嘛的,暴雪网易最新消息,网络营销零基础培训,电商产品开发流程8个步骤目录 一、队列的概念和结构 ​二、队列的实现 2.1队列的初始化QueueInit 2.2队列的摧毁QueueDestroy 2.3插入结点QueuePush 2.4删除结点QueuePop 2.5返回队头QueueFront 2.6返回队尾QueueBack 2.7判断队列为空QueueEmpty 2.8统计队列数目QueueSize 一、队列的概念和…目录 一、队列的概念和结构 ​二、队列的实现  2.1队列的初始化QueueInit  2.2队列的摧毁QueueDestroy 2.3插入结点QueuePush 2.4删除结点QueuePop 2.5返回队头QueueFront 2.6返回队尾QueueBack 2.7判断队列为空QueueEmpty 2.8统计队列数目QueueSize 一、队列的概念和结构 队列只允许在一端进行插入数据操作在另一端进行删除数据操作的特殊线性表队列具有先进先出性质。FIFO(First In First Out) 入队列进行插入操作的一端称为队尾                                         出队列进行删除操作的一端称为队头 二、队列的实现  队列也可以数组和链表的结构实现使用链表的结构实现更优一些因为如果使用数组的结构出队列在数组头上出数据效率会比较低。 当用链表实现时我们布置的结构体肯定要包含一个val还需要一个next。 typedef int QDataType; typedef struct QueueNode {QDataType val;struct QueueNode* next; }QNode;但结构体的布置并非到这里就结束了当我们有数据要入队时我们是不是需要让头指针遍历一遍链表找到队尾呢而且要改变队尾前一个结点next的指向是不是要传入二级指针呢同样当我们布置其他函数体时也会遇到类似的问题。那么如何让我们的代码量化到最简呢 我们再设置一个结构体来存储相关的数据这样修改指向时不用再用二级指针而是只需要修改结构体的值即可。我们用phead指向队列的头结点便于出队用ptail指向队列的尾结点便于入队 typedef struct Queue {QNode* phead;QNode* ptail;int size; }Queue;2.1队列的初始化QueueInit  void QueueInit(Queue* pq) {assert(pq);pq-phead pq-ptail NULL;pq-size 0; } 2.2队列的摧毁QueueDestroy 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; } 2.3插入结点QueuePush 首先我们要新开结点其次我们要判断链表是否为空如果为空那么ptail和phead都指向新结点如果不为空phead的指向不用改变而ptail的next要只想newnode然后再把ptail向后移 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 NULL){pq-ptail pq-phead newnode;}else{pq-ptail-next newnode;pq-ptail newnode;}pq-size; } 2.4删除结点QueuePop 首先先让队头指向next结点接着我们就要判断删除的是不是整个队列的最后一个结点如果删除的是最后一个结点那么就会影响到我们ptail的指向所以我们通过判断避免ptail变成野指针。 void QueuePop(Queue* pq) {assert(pq);// assert(pq-phead);QNode* del pq-phead;pq-phead pq-phead-next;free(del);del NULL;if (pq-phead NULL)pq-ptail NULL;pq-size--; } 2.5返回队头QueueFront QDataType QueueFront(Queue* pq) {assert(pq);assert(pq-phead);return pq-phead-val; } 2.6返回队尾QueueBack QDataType QueueBack(Queue* pq) {assert(pq);assert(pq-ptail);return pq-ptail-val; } 2.7判断队列为空QueueEmpty bool QueueEmpty(Queue* pq) {assert(pq);return pq-phead NULL; } 2.8统计队列数目QueueSize int QueueSize(Queue* pq) {assert(pq);return pq-size; }
http://www.hkea.cn/news/14543150/

相关文章:

  • 淘宝网官方网站购物商城wordpress 标签 修改
  • 南阳做网站优化价格wordpress用户批量注册
  • 建站公司网站源码社区wordpress绑定新域名以后404
  • 长春网站怎么推广Wordpress去掉左上角标志
  • 公司网站建设费专业网站建设制作价格
  • 高端科技产品网站建设木疙瘩h5制作教程
  • 做兼职的网站有哪些网站上做百度广告赚钱么
  • 网站建设升级91wan网页游戏平台
  • 仿新浪首页网站模板软件开发的流程是什么
  • 数字营销平台有哪些昆明官网seo技术
  • 网站建设的费用结构二级域名网站建设
  • 外国人做的中国字网站合肥网站建设网页设计
  • 微网站的搭建流程郑州全域静态管理
  • 网站介绍ppt怎么做教育类网站怎么做优化
  • 荷塘网站建设佛山网站建设设计公司哪家好
  • 做网站多长时间seo网站关键词快速排名
  • 媒体网站推进信息化建设外贸出口流程图详细
  • 广州外贸企业网站建设网站快照长期不更新
  • 做亚马逊网站需要租办公室吗备案后网站打不开
  • 搭建个人网站的两种方法网站建设属于什么类的采购
  • 做网站注册会员加入实名认证功能网站建设 广州网站建设专业公司
  • 如何把网站上传到网上专业网站建设人工智能
  • 用dw怎么做酷炫的网站给前端做网站的图片叫什么
  • wordpress知更鸟主题茶叶seo网站推广与优化方案
  • 做网站如何下载别人网站图片国内wordpress大牛
  • 做网站和网页有什么区别建设京东物流网站的目标是什么
  • 临沂网站制作专业全国互联网安全管理服务平台
  • 网站开发业务ppt信用门户网站建设方案
  • 景宁建设局网站官网微信推广是什么意思
  • 网站优化方法网站建设与维护新的体会