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

溧阳建设局网站推广赚钱app

溧阳建设局网站,推广赚钱app,案例学 网页设计与网站建设,南京蓝牙app开发公司队列是一种常见的数据结构,它是一种先进先出(First-In-First-Out, FIFO)的线性表。在队列中,数据元素按照插入的顺序排列,最先插入的元素在队列的前面,最后插入的元素在队列的后面。类比生活中排队购物的情…

队列是一种常见的数据结构,它是一种先进先出(First-In-First-Out, FIFO)的线性表。在队列中,数据元素按照插入的顺序排列,最先插入的元素在队列的前面,最后插入的元素在队列的后面。类比生活中排队购物的情景,先到先得的原则就是队列的特点。

队列具有以下基本概念和特点:

  1. 入队(enqueue):向队列的末尾插入(或加入)一个新元素。
  2. 出队(dequeue):从队列的头部移除(或取出)一个元素。
  3. 队头(front):队列的头部,即队列中的第一个元素。
  4. 队尾(rear):队列的尾部,即队列中的最后一个元素。
  5. 空队列(empty queue):队列中不包含任何元素。
  6. 满队列(full queue):队列已满,无法再插入新元素。
  7. 队列的大小(queue size):队列中包含的元素个数。

队列常用于模拟各种实际场景,例如计算机系统中的任务调度、打印队列、操作系统中的进程调度等。在算法和数据结构中,队列也是一种重要的基础数据结构,常用于解决各种问题,如广度优先搜索、树和图的遍历等。
在这里插入图片描述
队列的项目结构目录

在这里插入图片描述
头文件QueueStorage.h
在这里插入图片描述头文件QueueStorage.h代码

#ifndef SEQQUEUE_H
#define SEQQUEUE_H
#include <stdio.h>
#include <stdlib.h>
#define MAX_SIZE 1024// 顺序存储类似于数组定义一个结构体即可
typedef struct SEQQUEUE {// 无类型指针,可以接收如何数据类型的数据void* data[MAX_SIZE];// 数组的大小int size;}SeqQueue;
// 初始化结构体
SeqQueue* Init_SeqQueue();
// 入队列
void Push_SeqQueue(SeqQueue* queue, void* data);
// 返回对头元素
void* Front_SeqQueue(SeqQueue* queue);
// 出队列
void* Pop_SeqQueue(SeqQueue* queue);
// 返回队尾的元素
void* Back_SeqQueue(SeqQueue* queue);
// 返回大小
int Size_SeqQueue(SeqQueue* queue);
//清空队列
void* Clear_SeqQueue(SeqQueue* queue);
// 销毁队列
void* FreeSpace_SeqQueue(SeqQueue* queue);#endif

cpp文件截图

在这里插入图片描述cpp文件代码

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream>
#include <string.h>
#include "QueueStorage.h"
// 初始化结构体
SeqQueue* Init_SeqQueue() {SeqQueue* queue = (SeqQueue*)malloc(sizeof(SeqQueue));// 使用for循环对队列进行初始化for (int i = 0; i < MAX_SIZE; i++) {// 将队列初始化为NULLqueue->data[i] = NULL;}queue->size = 0;return queue;
};
// 入队列
void Push_SeqQueue(SeqQueue* queue, void* data) {// 确定数组的哪一个方向是对头:将数组的左边作为对头if (queue == NULL) {return;}if (data == NULL) {return;}// 将元素插入数组中,元素的移动if (queue->size == MAX_SIZE) {return;}queue->data[queue->size] = data;queue->size++;
};
// 返回对头元素
void* Front_SeqQueue(SeqQueue* queue) {if (queue == NULL) {return NULL;}if (queue->size == 0) {return NULL;}return queue->data[0];
};
// 出队列
void* Pop_SeqQueue(SeqQueue* queue) {// 移动元素if (queue == NULL) {return NULL;}if (queue->size == 0) {return NULL;}for (int i = 0; i < queue->size - 1; i++) {queue->data[i] = queue->data[i + 1];}queue->size--;
};
// 返回队尾的元素
void* Back_SeqQueue(SeqQueue* queue) {if (queue == NULL) {return NULL;}if (queue->size == 0) {return NULL;}return queue->data[queue->size-1];
};
// 返回大小
int Size_SeqQueue(SeqQueue* queue) {if (queue == NULL) {return -1 ;}return queue->size;
};
//清空队列
void* Clear_SeqQueue(SeqQueue* queue) {if (queue == NULL) {return NULL;}queue->size = 0;
};
// 销毁队列
void* FreeSpace_SeqQueue(SeqQueue* queue) {if (queue == NULL) {return NULL;}free(queue);
};

主文件截图main.cpp
在这里插入图片描述主文件代码mian.cpp

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream>
#include <string.h>
#include "QueueStorage.h"typedef struct PERSON {char name[64];int age;}Person;int main()
{SeqQueue* queue = Init_SeqQueue();// 创建数据Person p1 = { "aaa",10 };Person p2 = { "bbb",20 };Person p3 = { "ccc",30 };Person p4 = { "ddd",40 };Person p5 = { "eee",50 };//数据入队列调用push函数Push_SeqQueue(queue, &p1);Push_SeqQueue(queue, &p2);Push_SeqQueue(queue, &p3);Push_SeqQueue(queue, &p4);Push_SeqQueue(queue, &p5);// 输出队尾元素Person* backPerson = (Person*)Back_SeqQueue(queue);printf("name:%s age:%d", backPerson->name, backPerson->age);//输出while (Size_SeqQueue(queue) > 0) {// 取出对头元素Person* p = (Person*)Front_SeqQueue(queue);// 输出printf("name = %s age = %d \n",p->name,p->age);// 从对头弹出元素Pop_SeqQueue(queue);}// 销毁队列FreeSpace_SeqQueue(queue);system("pause");return 0;
}

项目运行结果展示
在这里插入图片描述

http://www.dtcms.com/wzjs/324457.html

相关文章:

  • 国外做设备网站桂林seo排名
  • 销售产品单页面网站模板今日新闻热点大事件
  • 哈尔滨专业建网站方案网络优化师
  • 网站域名申请之后如何做网站全球网络营销公司排行榜
  • 青岛网站建设 大公司怎样才能在百度上面做广告宣传
  • 个人网站自助建站网站建设找哪家公司好
  • 国外做网站卖东西要什么条件长春网站开发公司
  • 简单制作网页优化设计六年级上册语文答案
  • 贵阳营销型网站建设电商培训机构有哪些?哪家比较好
  • 为什么wordpress那么慢网站外链优化方法
  • 网站开发笔记本要什么配置中国今日新闻
  • 什么网站可以做图赚钱吗seo课程哪个好
  • 医院网站建设情况郑州网站优化外包
  • 网站建设前端后端百度数据网站
  • 兴义市住房和城乡建设网站月销售百度主页
  • 深圳品牌网站设计专家湖南百度seo排名点击软件
  • .net 门户网站seo搜索优化招聘
  • 纳森网络做网站多少钱企业网站排名优化方案
  • 网页站点文件夹推广策略怎么写
  • 湖北省建设厅官方网站资料网app拉新渠道商
  • 网站建设一般要素百度认证中心
  • 上海网站建设q.479185700棒营销软文案例
  • 企业网站开发外包免费发布推广信息网站
  • 从网络营销角度做网站宁波seo软件免费课程
  • wordpress网站变灰微信指数查询
  • 中文网站开发软件百度云资源搜索入口
  • 商城网站建设的优势抖音seo排名
  • 做购物网站 推广2345网址导航是病毒吗
  • 中国建设教育网站官方镇江网站建设制作公司
  • 网页生成app在线昆明优化网站公司