#include <iostream>
using namespace std;//循环队列(少用一个空间)长度
#define M (8+1)typedef struct node {int index;int nextIndex;
} Node;Node* init(int front, int len) {//限制少用一个空间,没有限制少用一个下标,所以front>M-1if (front > M - 1 || len > M - 1) {return NULL;}Node* nodes = new Node[len];for (int i = 0, j = front; i < len; ++i, ++j) {nodes[i].index = j % M;nodes[i].nextIndex = (j + 1) % M;}return nodes;
}void printDescription(Node* nodes, int len) {if (nodes) {for (int i = 0; i < len; ++i) {cout << "index: " << nodes[i].index << " nextIndex: "<< nodes[i].nextIndex << endl;}/**循环队列(少用一个空间)长度计算公式:length = (rear-front+1+M)%M;*为了判断队列是否空/满情况*空: front == rear*满:front == (rear+1)%M*/int length = (nodes[len - 1].index - nodes[0].index + 1 + M) % M;cout << "length: " << length << endl;} else {cout << "参数错误!!!" << endl;}
}

如果用一个循环数组q[0..m-1]表示队列时,该队列只有一个队列头指针front,不设队列尾指针rear,求这个队列中从队列投到队列尾的元素个数(包含队列头、队列尾)。相关推荐

  1. 写一个循环,不断的问用户想买什么,用户选择一个商品编号,就把对应的商品添加到购物车里,最终用户输入q退出时,打印购物车里的商品列表

    写一个循环,不断的问用户想买什么,用户选择一个商品编号,就把对应的商品添加到购物车里,最终用户输入q退出时,打印购物车里的商品列表 写一个循环,不断的问用户想买什么,用户选择一个商品编号,就把对应的商 ...

  2. C语言:猴子吃桃问题:猴子第一天摘下若干桃子,当即吃了一半多一个,第二天将剩下的桃子吃掉一半多一个,以后每天都吃掉前一天剩下桃子的一半多一个。到第10天想再吃时,只剩下一个桃子。

    题目: 猴子吃桃问题:猴子第一天摘下若干桃子,当即吃了一半多一个,第二天将剩下的桃子吃掉一半多一个,以后每天都吃掉前一天剩下桃子的一半多一个.到第10天想再吃时,只剩下一个桃子.求第一天猴子共摘了多少 ...

  3. 返回一个循环数组中最大子数组的和

    设计思路 首先利用rand()函数随机产生一个一维数组,数组长度通过宏定义来控制.求首尾连接的一维数组的最大子数组的和我的思路是:循环N次(N是数组的长度)依次检测数组的最大子数组的和再比较大小,保留 ...

  4. 关于求1~n中与m互质的数的个数(容器原理+数论分解质因子)

    D. Count GCD 这道题严格来讲不难,a[i]与b[i+1]最大公约数为a[i+1],所以a[i]与b[i+1]必定整除a[i+1],且a[i]/a[i+1]与b[i+1]/a[i+1]互质, ...

  5. C语言输出最后一个空格去掉,新人提问:如何将输出时每行最后一个空格删除...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 如何将每行最后一个空格删除,使矩阵只有数字间有空格,没有多余空格? #include #include int main() { int i,j,k,m, ...

  6. 猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了1个。第2天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天想再吃时,就只剩一个

    代码: #include <stdio.h> #include <math.h> #define T 10 int main(){ //定义桃子的总数 int x; doubl ...

  7. ant-design-vue 中标签页tab上额外的元素(tabBarExtraContent) , tab选项卡头增加文字

    公司有个需求,在ant-design-vue的标签页上,在tab选项卡头增加文字. 具体需求效果,如下图. 实现原理: 一.主要用到插槽(slot) 二.代码如下: <a-tabs style= ...

  8. 第5周作业(杨辉三角形,队列元素逆置,银行排队——队列,整数划分问题,买票问题——卡特兰数,小兔的棋盘——卡特兰数)

    一.杨辉三角形 [问题描述]杨辉三角形的打印,请用循环队列实现.不采用"循环队列",不给分. [样例输入] 4 [样例输出] 1 1 1 1 2 1 1 3 3 1 #includ ...

  9. 循环数组最大字段和(51Nod-1050)

    题目 N个整数组成的循环序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的连续的子段和的最大值(循环序列是指n个数围成一个圈,因此需要考虑a[n-1],a ...

最新文章

  1. hdoj 5199 Gunner map
  2. [转]MongoDb环境部署
  3. leetcode算法题--不同路径2
  4. vuex 编译项目_俺咋能看懂公司前端项目?
  5. Linux编程 20 shell编程(shell脚本创建,echo显示信息)
  6. python爬虫之图片
  7. LeetCode(16)题解--3Sum Closest
  8. DirectX 初始化DirectX(手写和红龙书里面的方式)
  9. Java基础编程题50道题
  10. 拦截器和过滤器的执行顺序和区别
  11. 【z变换】3. 逆z变换
  12. 开发者故事|朝九晚六大小周,我就是快乐的技术人
  13. msconfig蓝屏_电脑设置MSConfig后重启就蓝屏,然后又自动重启,一直循环。。。怎么办啊啊啊啊啊啊...
  14. 修改传奇私服服务器,传奇SF 肿么修改服务器时间
  15. 湖南计算机前十大学,湖南计算机专业学校排名
  16. 程序猿小哥用12万行代码堆出来个「蔡徐坤」!编译竟然还能通过
  17. 人工智能将在未来几年,呈现以下四个主要发展趋势
  18. 5.2 数据可视化分析——词云图绘制
  19. 回收站清空的文件能恢复吗?2种方法强力推荐
  20. 中央情报局关键词提取——Unicode码

热门文章

  1. 民锋国际期货:期货交易 | 博弈之道,遵守法则
  2. 【源码阅读】SIR-GN: A Fast Structural Iterative Representation Learning Approach For Graph Nodes
  3. QT5.15.2__wind10 64 源码编译
  4. 矩阵篇(四)-- 实随机向量的相关矩阵、协方差矩阵、相关系数
  5. BCB数据库问题总结
  6. conda中的CUDA和自己安装的CUDA的区别
  7. 神经网络压缩库Distiller学习
  8. 【计算机网络】(一)走进网络
  9. Linux—vi命令详解
  10. 会计专业毕业论文如何选题?