.N个人站成一排,从左到右编号为1-N,从左到右报数"1,2,3,……",其中报数为1和2的人出列

.N个人站成一排,从左到右编号为1-N,从左到右报数"1,2,3,……",其中报数为1和2的人出列报数为3的人立即站到队伍的最右端,报数过程反复进行直到n个人都出列为止

循环队列是一种常见的队列实现方式,各个数据元素依次存储,并设置两个指针,分别指向队头和队尾,在插入和删除数据时,队头指针和队尾指针会循环使用存储空间。应用队列可以解决报数问题。

可以创建一个队列存储各个数据。左边相当于队头,右边相当于队尾。左边的人报数相当于从队列中取出队头元素并删除队头元素。

站到队伍的最右边相当于在队尾插入一个数据。为实现1,2,1,2,1,2….报数,可以设置一个计数器变量count,count每次加1,count%2交替等于1和0,count%2等于1相当于报数1,count%2等于0相当于报数2。

由来

三角形数,传说古希腊毕达哥拉斯(约公元前570-约公元前500年)学派的数学家经常在沙滩上研究数学问题,他们在沙滩上画点或用小石子来表示数。

由于这些数可以用如图1所示的三角形点阵表示,他们就将其称为三角形数。

正方形数,类似地,被称为正方形数,因为这些数能够表示成正方形。因此,按照一定顺序排列的一列数称为数列。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-07-30

循环队列是一种常见的队列实现方式,各个数据元素依次存储,并设置两个指针,分别指向队头和队尾,在插入和删除数据时,队头指针和队尾指针会循环使用存储空间。应用队列可以解决报数问题。

可以创建一个队列存储各个数据。左边相当于队头,右边相当于队尾。左边的人报数相当于从队列中取出队头元素并删除队头元素。

站到队伍的最右边相当于在队尾插入一个数据。为实现1,2,1,2,1,2….报数,可以设置一个计数器变量count,count每次加1,count%2交替等于1和0,count%2等于1相当于报数1,count%2等于0相当于报数2。

由来

三角形数,传说古希腊毕达哥拉斯(约公元前570-约公元前500年)学派的数学家经常在沙滩上研究数学问题,他们在沙滩上画点或用小石子来表示数。

由于这些数可以用如图1所示的三角形点阵表示,他们就将其称为三角形数。

正方形数,类似地,被称为正方形数,因为这些数能够表示成正方形。因此,按照一定顺序排列的一列数称为数列。

本回答被网友采纳
第2个回答  2016-10-27
你要是用c++的话,标准库就有队列类(std::queue),实现你这个应该很简单本回答被网友采纳
第3个回答  2016-10-27
问什么追问

写这个程序 用链式队列

相似回答