一、队列简介
数据结构中的队列是先进先出,如同一根管道一样的数据结构。队列在程序设计中应用比较广泛,比如说处理数据库的并发请求时,要用到队列,虽然有专门的队列处理工具(如:kafka),但是了解队列这样的数据结构还是必要的;还有一种情况就是订单的处理,如果不想遗漏的话,还是需要队列这样的数据结构。
现在的程序设计是B/S结构,前后端设计中,数据库无疑成为了瓶颈,用队列这种数据结构去缓解数据库的并发请求,是实用的应用场景。虽然现在的数据库可以是主从数据库,或者是分布式的,但是请求流量不是均衡的,一天中主要集中在中午和晚上,因为大部分时间请求的用户都在上班,还有各种秒杀,节日等,这种集中爆发式请求,都在考验着后端的数据库。
二、队列的数据结构示例代码如下:
程序在安卓系统下的 Compiler C语言编译器下编译通过。
此程序的队列是链表实现的链式队列,不是线性表实现的。结构体中的 data 代表数据元素,在实际应用中 data 应该是另一个结构体,并且定义数据项,如:姓名、性别、年龄、籍贯等等类似的数据项。
/*
程序功能:单链表实现的队列实验示例
说明:本程序的入队列和出队列功能全部实现
作者:冰雪青松
邮箱:946585434@qq.com
日期:2022.09.29
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <assert.h>