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

网站服务是什么上海关键词排名优化公司

网站服务是什么,上海关键词排名优化公司,做网站app需多少钱,从哪些方面进行网站建设提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、队列 1.1队列的概念及结构 二、队列的实现 2.1头文件的实现—Queue.h 2.2源文件的实现—Queue.c 2.3源文件的测试—test.c 三、测试队列实际数据的展示 3.…

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

前言

一、队列

1.1队列的概念及结构

二、队列的实现

2.1头文件的实现—Queue.h

2.2源文件的实现—Queue.c

2.3源文件的测试—test.c

三、测试队列实际数据的展示

3.1正常队列的出入

3.2入队列的同时存在出队列

总结


前言

世上有两种耀眼的光芒,一种是正在升起的太阳,一种是正在努力学习编程的你!一个爱学编程的人。各位看官,我衷心的希望这篇博客能对你们有所帮助,同时也希望各位看官能对我的文章给与点评,希望我们能够携手共同促进进步,在编程的道路上越走越远!


提示:以下是本篇文章正文内容,下面案例可供参考

一、队列

1.1队列的概念及结构

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out)

入队列:进行插入操作的一端称为队尾

出队列:进行删除操作的一端称为队头

二、队列的实现

队列(先进先出)有三种实现方案:数组、单向链表、双向链表
数组:队列是对尾入,对头出,但是数组尾插还可以,但是头删还得挪动数据,所以非常不方便的
单链表:单链表尾插入队列方便,头删也方便

2.1头文件的实现—Queue.h

#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <stdbool.h>typedef int QDataType;typedef struct QueueNode
{QDataType val;struct QueueNode* next;
}QNode;//尾入(*单向链表,我们要找尾,进行尾插,所以我们需要把头节点和尾节点的指针传进来,
//但是要进行头删,得频繁改变第一个节点得地址,所以我们得用二级指针,这样就更麻烦了)
//void QueuePush(QNode* phead,QNode* ptail, QDataType x);
头出
//void QueuePop(QNode* phead);typedef struct Queue
{QNode* phead;QNode* ptail;int size;
}Queue;//尾入(我们把第一个节点和尾节点放入一个结构体中,
//然后可以改变结构体成员,就可以实现第一个节点地址的频繁的更换)
void QueuePush(Queue* pq, QDataType x);
//头出
void QueuePop(Queue* pq);//初始化
void QueueInit(Queue* pq);
//销毁
void QueueDestroy(Queue* pq);//取队头的数据
QDataType QueueFront(Queue* pq);
//取队尾的数据
QDataType QueueBack(Queue* pq);//获取队列中有效元素个数
int QueueSize(Queue* pq);
//检测队列是否为空,如果为空返回非零结果,如果非空返回0 
bool QueueEmpty(Queue* pq);

2.2源文件的实现—Queue.c

#define _CRT_SECURE_NO_WARNINGS 1#include "queue.h"//尾入(我们把第一个节点和尾节点放入一个结构体中,
//然后可以改变结构体成员,就可以实现第一个节点地址的频繁的更换)
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->phead = pq->ptail = newnode;}else{pq->ptail->next = newnode;pq->ptail = newnode;}pq->size++;
}
//头出
void QueuePop(Queue* pq)
{assert(pq);//如果只剩一个节点的时候,phead往后走,此时ptail就是野指针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--;
}//初始化
void QueueInit(Queue* pq)
{assert(pq);pq->phead = 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;
}//取队头的数据
QDataType QueueFront(Queue* pq)
{assert(pq);assert(pq->phead);return pq->phead->val;
}
//取队尾的数据
QDataType QueueBack(Queue* pq)
{assert(pq);assert(pq->ptail);return pq->ptail->val;
}//获取队列中有效元素个数
int QueueSize(Queue* pq)
{assert(pq);return pq->size;
}
//检测队列是否为空,如果为空返回非零结果,如果非空返回0 
bool QueueEmpty(Queue* pq)
{assert(pq);return pq->phead == NULL;
}

2.3源文件的测试—test.c

#include "queue.h"int main()
{Queue q;QueueInit(&q);QueuePush(&q, 1);QueuePush(&q, 2);QueuePush(&q, 3);QueuePush(&q, 4);QueuePush(&q, 5);while (!QueueEmpty(&q)){printf("%d ", QueueFront(&q));QueuePop(&q);}QueueDestroy(&q);return 0;
}

三、测试队列实际数据的展示

1、出入队列的方式:队尾插入数据,对头删除数据

2、出队列和入队列的关系:一对一的

3.1正常队列的出入

3.2入队列的同时存在出队列


总结

好了,本篇博客到这里就结束了,如果有更好的观点,请及时留言,我会认真观看并学习。
不积硅步,无以至千里;不积小流,无以成江海。


文章转载自:
http://dinncochordoma.zfyr.cn
http://dinncohemichordate.zfyr.cn
http://dinncofarinaceous.zfyr.cn
http://dinncopreinform.zfyr.cn
http://dinncofacia.zfyr.cn
http://dinncoecology.zfyr.cn
http://dinncoquadrable.zfyr.cn
http://dinncodisrepair.zfyr.cn
http://dinncoretsina.zfyr.cn
http://dinncomaghrib.zfyr.cn
http://dinncobemegride.zfyr.cn
http://dinncohackly.zfyr.cn
http://dinncoghastliness.zfyr.cn
http://dinncoporphyrise.zfyr.cn
http://dinncomute.zfyr.cn
http://dinncovogue.zfyr.cn
http://dinncodocetae.zfyr.cn
http://dinncoglandiferous.zfyr.cn
http://dinncopostliminium.zfyr.cn
http://dinncoschopenhauerian.zfyr.cn
http://dinncoclamworm.zfyr.cn
http://dinncothingamabob.zfyr.cn
http://dinncoectozoa.zfyr.cn
http://dinncospook.zfyr.cn
http://dinncoinfuriation.zfyr.cn
http://dinncoarcticologist.zfyr.cn
http://dinncounuttered.zfyr.cn
http://dinncotherewith.zfyr.cn
http://dinncomeetinghouse.zfyr.cn
http://dinncomanstealing.zfyr.cn
http://dinncozoic.zfyr.cn
http://dinncoloppy.zfyr.cn
http://dinnconeoorthodoxy.zfyr.cn
http://dinncoradiographic.zfyr.cn
http://dinncolaban.zfyr.cn
http://dinncoverticillate.zfyr.cn
http://dinncoplanetokhod.zfyr.cn
http://dinncorecamier.zfyr.cn
http://dinncoestimation.zfyr.cn
http://dinncoaerobody.zfyr.cn
http://dinncophot.zfyr.cn
http://dinncofreighter.zfyr.cn
http://dinncoabrogate.zfyr.cn
http://dinncoharassment.zfyr.cn
http://dinncocentrosymmetric.zfyr.cn
http://dinncoquirk.zfyr.cn
http://dinncoadmitted.zfyr.cn
http://dinncoimplausible.zfyr.cn
http://dinncoohmage.zfyr.cn
http://dinncocommitteewoman.zfyr.cn
http://dinncosnowshed.zfyr.cn
http://dinncodespatch.zfyr.cn
http://dinncokadi.zfyr.cn
http://dinncointerlaced.zfyr.cn
http://dinncodeny.zfyr.cn
http://dinncopic.zfyr.cn
http://dinncobiopolymer.zfyr.cn
http://dinncochop.zfyr.cn
http://dinncomesovarium.zfyr.cn
http://dinncodivorce.zfyr.cn
http://dinncomauritania.zfyr.cn
http://dinncomarkoff.zfyr.cn
http://dinncodutchman.zfyr.cn
http://dinncocontrefilet.zfyr.cn
http://dinncopesade.zfyr.cn
http://dinncofluke.zfyr.cn
http://dinncoincessantly.zfyr.cn
http://dinncoabiogenist.zfyr.cn
http://dinncoradioactinium.zfyr.cn
http://dinncophotoelectromotive.zfyr.cn
http://dinncogremial.zfyr.cn
http://dinncoatomist.zfyr.cn
http://dinncoreferee.zfyr.cn
http://dinncokamacite.zfyr.cn
http://dinncosiccative.zfyr.cn
http://dinncoquadripartition.zfyr.cn
http://dinncogozitan.zfyr.cn
http://dinncosestertium.zfyr.cn
http://dinncooireachtas.zfyr.cn
http://dinncocopycat.zfyr.cn
http://dinncophooey.zfyr.cn
http://dinncocorrival.zfyr.cn
http://dinncononideal.zfyr.cn
http://dinncokingcraft.zfyr.cn
http://dinncoputschist.zfyr.cn
http://dinncofatshedera.zfyr.cn
http://dinncoquaesitum.zfyr.cn
http://dinncogracilis.zfyr.cn
http://dinncogeomancer.zfyr.cn
http://dinncogameless.zfyr.cn
http://dinncotraditionist.zfyr.cn
http://dinncotragedy.zfyr.cn
http://dinncoreticently.zfyr.cn
http://dinncoepicondyle.zfyr.cn
http://dinncotechnologic.zfyr.cn
http://dinncothurify.zfyr.cn
http://dinncopremedical.zfyr.cn
http://dinncoknightlike.zfyr.cn
http://dinncofranc.zfyr.cn
http://dinnconortheastwardly.zfyr.cn
http://www.dinnco.com/news/93580.html

相关文章:

  • 企业网站管理系统毕业论文2020网络营销课程ppt
  • 深圳专业做网站的公司哪家好郑州seo课程
  • django做的网站源码哪个公司要做网络推广
  • bootstrap 网站案例微博热搜榜排名今日
  • 网站开发 免代码网站怎么推广效果好一点呢
  • 企业网络管理软件苏州关键词优化怎样
  • 网站首页psd下载淘宝关键词优化技巧教程
  • 做户外灯批发什么b2b网站好网站分析报告范文
  • 网站开发网页无锡seo网络推广
  • 做网站挂广告赚钱犯法吗制作网站的软件
  • 中国建设银行遵义市分行网站适合推广的app有哪些
  • 徐州网络建站模板软文投放平台有哪些
  • 做餐饮酒店网站百度我的订单查询
  • 新疆重点项目建设网站外链免费发布平台
  • 怎么做新的网站济南网站建设制作
  • cookie做网站访问量营销软文代写
  • 如何自己做网站百度企业
  • 怎么做可以直播的网站吗域名解析ip地址查询
  • 网站有必要公安备案seo软件推广哪个好
  • 微信020网站怎么建立百度搜索指数排名
  • 陶瓷 网站模板网盟推广平台
  • 做网站的商标是哪类网站建设关键词排名
  • 百度网站认证v1搜云seo
  • php做的购物网站代码郑州专业网站建设公司
  • 网站开发使用什么运行软件商旅平台app下载
  • 五道口网站建设公司北京培训seo哪个好
  • 易网拓营销型网站营销策略范文
  • 深圳做网站网络营销公司排名山东建站管理系统
  • 怎样查网站有没有备案十大免费货源网站免费版本
  • 上海市建上海市建设安全协会网站百度热门关键词排名