队列
2015-11-15 16:08
204 查看
新学期开始了,小哈是小哼的新同桌(小哈是个小美女哦~),小哼向小哈询问 QQ 号, 小哈当然不会直接告诉小哼啦,原因嘛你懂的。所以小哈给了小哼一串加密过的数字,同时 小哈也告诉了小哼解密规则。规则是这样的:首先将第 1 个数删除,紧接着将第 2 个数放到 这串数的末尾,再将第 3 个数删除并将第 4 个数放到这串数的末尾,再将第 5 个数删除...... 直到剩下最后一个数,将最后一个数也删除。按照刚才删除的顺序,把这些删除的数连在一 起就是小哈的 QQ 啦。现在你来帮帮小哼吧。小哈给小哼加密过的一串数是“6 3 1 7 5 8 9 2 4”。
#include <stdio.h> int main() { int q[102]={0,6,3,1,7,5,8,9,2,4},head,tail; int i; //初始化队列 head=1; tail=10; //队列中已经有9个元素了,tail指向队尾的后一个位置 while(head<tail) //当队列不为空的时候执行循环 { //打印队首并将队首出队 printf("%d ",q[head]); head++; //先将新队首的数添加到队尾 q[tail]=q[head]; tail++; //再将队首出队 head++; } getchar();getchar(); return 0; }
//结构体实现
#include <stdio.h> int main() { int q[102]={0,6,3,1,7,5,8,9,2,4},head,tail; int i; //初始化队列 head=1; tail=10; //队列中已经有9个元素了,tail指向队尾的后一个位置 while(head<tail) //当队列不为空的时候执行循环 { //打印队首并将队首出队 printf("%d ",q[head]); head++; //先将新队首的数添加到队尾 q[tail]=q[head]; tail++; //再将队首出队 head++; } getchar();getchar(); return 0; }
相关文章推荐
- 前端开发与SEO
- ng-bind,ng-cloak优化数据显示
- Map 接口 源代码
- C语言:字符串、结构体中关于数组的几个问题
- 关于头文件定义全局变量等问题
- Java入门(三)static关键字
- typeof和instanceof
- 使用 JavaScript 实现基本队列、优先队列和循环队列
- linux awk时间计算脚本及awk命令详解
- 使用preg_match()函数验证ip地址
- Java应用程序中的内存泄漏及内存管理
- new android xml file时root element没有menu选项
- Java for android – Instanceof
- OC总结
- 时钟设计技巧
- TCP的四次挥手
- 记跪掉的NOIP2015
- DTD语法概述及简单应用举例
- Mysql 更新时间(加上或者减去一段时间)
- CodeForces 44B- A - Cola- 分类讨论