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

东莞网站建设网站制作公司中关村在线app下载

东莞网站建设网站制作公司,中关村在线app下载,新手学做网站书,罗湖网站建设1.队列的概念 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out)。 入队列:进行插入操作的一端称为队尾 出队列:进行删除操作的一端称为队头 2.队列…

1.队列的概念

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

2.队列的实现

1.初始化

2.销毁

3.队尾入队列

4.队头出队列

5.获取队列头部元素

6.获取队列尾部元素

7.有效元素个数

8.判是否为空

typedef int QDataType;
//链式结构表示队列
typedef struct QListNode
{struct QListNode* pNext;QDataType data;
}QNode;
//队列的结构
typedef struct Queue
{QNode* phead;QNode* ptail;int size;
}Queue;

2.1 初始化与销毁

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 = NULL;pq->ptail = NULL;pq->size = 0;
}

2.2 队尾入队列与队头出队列

//队尾入队列
void QueuePush(Queue* pq, QDataType x)
{assert(pq);QNode* newnode = (QNode*)malloc(sizeof(QNode));if (newnode == NULL){perror("malloc fail\n");return;}newnode->data = x;newnode->next = NULL;if (pq->phead == NULL){assert(pq->ptail == NULL);pq->phead = pq->ptail = newnode;}else{pq->ptail->next = newnode;pq->ptail = newnode;}pq->size++;
}
//队头出队列
void QueuePop(Queue* pq)
{assert(pq);assert(!QueueEmpty(pq));//分类讨论//1.一个节点             2.两个节点if (pq->phead->next == NULL){free(pq->phead);pq->phead = NULL;pq->ptail = NULL;}else{QNode* next = pq->phead->next;free(pq->phead);pq->phead = next;}pq->size--;
}

2.3 获取队列头部元素与获取队列尾部元素

//获取队列头部元素
QDataType QueueFront(Queue* pq)
{assert(pq);assert(!QueueEmpty(pq));return pq->phead->data;
}
//获取队列尾部元素
QDataType QueueBack(Queue* pq)
{assert(pq);assert(!QueueEmpty(pq));return pq->ptail->data;
}

2.4 有效元素个数与判是否为空

//有效元素个数
int QueueSize(Queue* pq)
{assert(pq);return pq->size;
}
//判断队列是否为空,如果为空返回非零结果,如果非空返回0
bool QueueEmpty(Queue* pq)
{assert(pq);return pq->size == 0;
}

http://www.sczhlp.com/news/127625/

相关文章:

  • 做网站要注册商标第几类平面设计网名
  • 网站的落地页网络服务器配置与管理试题
  • 深圳网站制作教程望牛墩网站建设公司
  • 无锡宜兴网站建设嘉兴建站模板源码
  • 查看网站开发平台网页游戏代理平台
  • 郑州建设网站推广公司重庆招聘网官方网站
  • php网站搭建苏州住建
  • 建什么网站可以长期盈利长沙住房建设部网站
  • 网站备案信息更改审核要多久小型的企业网站
  • 福建福州建设局网站无极网站建设定制
  • 网站恶意注册自动化东莞网站建设
  • 西宁制作网站多少钱推几个学习网站
  • pc 网站开发设计太原seo推广外包
  • 网站空间什么意思网站开发原型
  • 前端如何做双语网站免费做图片链接网站
  • 网站建设做什么科目自己做企业网站
  • 广东网站备案广东新闻频道
  • 网站备案公司倒闭公司网站案例展示
  • 做网站制作一般多少钱公积金网站 如何做减员
  • 专做恐怖片的网站备案网站建设承诺书
  • jsp网站开发实例教程网上做汽配生意的网站
  • 大宗商品价格查询网站室内设计效果图的网站
  • 嘉兴企业自助建站wordpress 3d插件
  • .mom域名可以做网站吗科技大盗
  • 深圳做网站排名公司近五年关于网站建设的参考文献
  • 南昌商城网站设计wordpress主题打开慢
  • 自己做的网站能被别人看到吗公司网页
  • 建设工程新工艺网站小程序网站做多大尺寸
  • 北京做网站哪家好公共网站怎地做
  • 长沙做网站公怎么找精准客户资源