队列( FIFO ) 循环队列
2015-08-02 13:11
274 查看
队列( FIFO )
![](http://img.blog.csdn.net/20150802130933982)
数组实现
循环队列
![](http://img.blog.csdn.net/20150802131121251)
数组实现
STL实现
数组实现
#include <stdio.h> #define N 64 int main() { int i, n, front, rear, q[2*N]; scanf("%d", &n); for(i = 0; i < n; i++) q[i] = i + 1; front = 0; rear = n; while(rear – front > 0) { printf("%d ", q[front]); front++; q[rear++] = q[front++]; } return 0; }
循环队列
数组实现
#include <stdio.h> #define N 64 int main() { int i, n, front, rear, q ; scanf("%d", &n); for(i = 0; i < n; i++) q[i] = i + 1; front = 0; rear = n; while((rear - front + N) % N > 0) { printf("%d ", q[front]); front = (front + 1) % N; q[rear] = q[front]; rear = (rear + 1) % N; front = (front + 1) % N; } return 0; }
STL实现
#include <cstdio> #include <queue> using namespace std; int main() { queue<int> q; int i, n; scanf("%d", &n); for(i = 0; i < n; i++) q.push(i + 1); while(!q.empty()) { printf("%d ", q.front()); q.pop(); q.push(q.front()); q.pop(); } return 0; }
相关文章推荐
- 【LeetCode】232 & 225 - Implement Queue using Stacks & Implement Stack using Queues
- POSIX互斥锁
- C语言位域精解
- extern "C"解析
- java多线程--12
- logn 时间复杂度 计算整数 末尾0的个数
- 数据库范式——通俗易懂
- poj2385 dp
- DFS POJ 1321 棋盘问题
- 写在工作三个月后
- 百度数据挖掘实习工程师一、二现场面试(深圳)
- poj 3685 二分套二分
- 对 iOS 多任务的误解 [多任务原理]
- 阿里巴巴电话面试2面总结_数据挖掘工程师(天猫事业部)
- 百度NLP电面总结(数据挖掘)
- 多线程程序设计学习(12)Thread-soecific storage pattern
- 杭电2078复习时间
- maven 使用myeclipse建立maven项目
- springmvc 上传图片文件和创建图片虚拟路径读取图片
- Spark工作机制-应用执行机制