About Queue:基于链表的队列的实现

       与之前所发的博客类似,这里参照清华大学教授邓俊辉所编写的《数据结构》一书给出链式队列的实现,其中的具体步骤的解释从略,关于头文件List.h,可以参考之前所发的博客链表

#include"List.h"

using namespace std;

template<typename T>
class Queue :public List<T>
{
	//队列模板类(继承List原有接口)
public:
	//size(),empty(),以及其他开放接口均可直接沿用
	void enqueue(T const& e)
	{
		List<T>::insertAsLast(e);//入队,尾部插入
	}

	T dequeue()
	{
		return List<T>::remove(List<T>::first());//入队,首部插入
	}

	T& front()
	{
		return List<T>::first()->data;//队首
	}
};

int main()
{
	Queue<int>que;
	for (int i = 0; i < 100; i++)
	{
		que.enqueue(i);
	}

	while (!que.empty())
	{
		cout << que.front() << "  ";
		que.dequeue();
	}
	system("pause");
	return 0;
}
发布了18 篇原创文章 · 获赞 17 · 访问量 173

猜你喜欢

转载自blog.csdn.net/dosdiosas_/article/details/105509579