第七周 项目 1
来源:互联网 发布:java工程师转行 编辑:程序博客网 时间:2024/05/20 07:13
sqqueue.h 代码
/**Copyright (c) 2017, 烟台大学计算机与控制工程学院 *All rights reserved.*文件名称: *作 者:陈军正 *完成日期:2017年10月15日 *版 本 号:v1.0**/typedef char ElemType;#define MaxSize 5typedef struct{ElemType data[MaxSize];int front, rear;}SqQueue;void InitQueue(SqQueue *&q); //初始化顺序环形队列 void DestroyQueue(SqQueue *&q); //销毁顺序环形队列 bool QueueEmpty(SqQueue *q); //判断顺序环形队列是否为空 int QueueLength(SqQueue *q); //返回队列中元素个数,也称队列长度bool enQueue(SqQueue *&q, ElemType e); //进队bool deQueue(SqQueue *&q, ElemType &e); //出队
main.cpp 代码
#include <iostream>#include "sqstack.h"using namespace std;int main(){SqQueue *s;ElemType e;cout << "初始化队列" << endl;InitQueue(s);//初始化顺序环形队列 cout << "a、b、c进队" << endl;enQueue(s, 'a');enQueue(s, 'b');enQueue(s, 'c');cout << "判断队列是否为空:";if (QueueEmpty(s))//判断顺序环形队列是否为空 cout << "空" << endl;elsecout << "非空" << endl; deQueue(s, e);//出队cout << "队列中元素的个数为:"<<QueueLength(s);enQueue(s, 'd');enQueue(s, 'e');enQueue(s, 'f');cout << endl << "队列中元素的个数为:"<<QueueLength(s);cout << endl << "删除队列" << endl;return 0;}
sqqueue.cpp 代码
#include "sqstack.h"#include <iostream>#include <malloc.h>using namespace std;void InitQueue(SqQueue *&q) //初始化顺序环形队列 {q = (SqQueue *)malloc(sizeof(SqQueue));q->front = q->rear = 0;}void DestroyQueue(SqQueue *&q) //销毁顺序环形队列 {free(q);}bool QueueEmpty(SqQueue *q) //判断顺序环形队列是否为空{return (q->front == q->rear);}int QueueLength(SqQueue *q) //返回队列中元素个数,也称队列长度{return (q->rear - q->front + MaxSize) % MaxSize;}bool enQueue(SqQueue *&q, ElemType e) //进队{if ((q->rear + 1) % MaxSize == q->front)return false;q->rear = (q->rear + 1) % MaxSize;q->data[q->rear] = e;return true;}bool deQueue(SqQueue *&q, ElemType &e) //出队{if (q->rear == q->front)return false;q->front = (q->front + 1) % MaxSize;e = q->data[q->front];return true;}
运行结果
总结:学习队列的建立,熟悉代码
阅读全文
0 0
- 第七周项目1
- 第七周项目1
- 第七周项目1
- 第七周项目1
- 第七周 项目1
- 第七周 项目1
- 第七周 【项目1
- 第七周项目1
- 第七周项目1
- 第七周 项目1
- 第七周项目1
- 第七周 项目 1
- 第七周项目1
- 第七周 项目1
- 第七周项目1
- 第七周-项目1
- 第七周【项目1
- 第七周 【项目1
- Okhttp框架搭建及拦截器
- 1009. 说反话 (20)
- 整洁代码之道——重构
- AngularJs的过滤器:filter、orderBy、date、currency、uppercase
- ######纯注解ssh环境:crm系统实体类设计 ①客户信息的【数据字典】表的产生原因+②设计理解:【字典类没有添加客户属性的原因】=深刻理解类间关联,建立在有需求的基础上。
- 第七周 项目 1
- 【makefile】一起写makefile(二)--总述
- 如何为公众号添加私教瑜伽课程微信预约系统
- springSecurity第一个入门Demo
- 333
- python内置函数
- 20171015算法学习总结
- 重构代码的7个阶段
- C++完成日期类的实现--Date