Cheet 3 队列
2016-06-18 16:39
211 查看
typedef Struct QNode { int data; struct QNode *next; }QNode, *QueuePtr; struct LinkQueue { QueuePtr front; QueuePtr rear; };
入队
Q.rear->next = p; Q.rear = p;
出队
p = Q.front->next; Q.front->next = p->next; if(Q.rear == p) Q.rear = Q.front;
循环队列
struct SqQueue { int *base; int front, rear; };
入队
Q.base[Q.rear] = e; Q.rear = (Q.rear + 1)%MAXQSIZE;
出队
e = Q.base[Q.front]; Q.front = (Q.front + 1)%MAXQSIZE;
计算个数
(Q.rear + Q.front + MAXQSIZE)%MAXQSIZE;
相关文章推荐
- 从对象创建和引用小议解耦
- DrawerLayout
- iOS - 分页万能公式
- C++面向对象总结(二)--友元函数
- C++工厂模式详解——设计模式(2)
- Android应用开发-网络编程(二)
- FFmpeg window编译
- Android Spinner值不显示,选择列表正常
- linux的find的命令用法
- [bzoj4378][POI2015]Logistyka
- spring下应用@Resource, @Autowired 和 @Inject注解进行依赖注入的差异
- [bzoj2091] [Poi2010]The Minima Game
- Android之SQLite登录注册与EditText清除功能
- webview支付时候遇到的坑
- Postgresql源码安装
- 331. Verify Preorder Serialization of a Binary Tree
- openwrt 和windows互传文件
- 细说java动态代理和cglib的动态代理
- Struts1和Struts2区别
- UNIX/Linux系统取证之信息采集案例