您的位置:首页 > 理论基础 > 数据结构算法

数据结构与算法分析(c++版) #9 队列

2015-09-24 10:41 267 查看
队列

同栈一样,队列(queue)也是一种受限的线性表。队列元素只能从队尾插入(称为入队操作,enqueue),以及从队首删除(称为出队操作,dequeue)。队列操作像在电影院前排队买票一样。如果没有人为的破坏,那么新来者应该站到队列的后端,在队列最前面的人是下一个被服务的对象。因此,队列是按照到达的顺序来释放元素的,即“先进先出”(First
In First Out)。

下面定义了队列的虚拟类。
template <class Elem> class Queue
{
//  清空队列的元素
	virtual void clear() = 0;
//  入队
	virtual bool enqueue(const Elem&) = 0;
//  出队,并返回队首元素
	virtual bool dequeue(Elem&) = 0;
//  返回队首元素
	virtual bool frontValue(Elem&) const = 0;
//  返回队列长度
	virtual int length() const = 0;
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: