编写一个模板队列类,并实现以下方法:
(1) void add(Type elem)   向队列尾中添加元素;
(2) Type remove() 从队列头中删除元素;
(3) bool is_empty() 判断队列是否为空;
另外,定义一个重载的析取运算符operator <<,使得可以直接输出队列对象的值。具体要求:  (1)用链表实现链表元素的存放;
(2)定义一个模板类QueueItem,存放模板类Queue的一个节点,并将Queue定义为QueueItem的友元类;
(3)将Queue模板类的定义放到头文件 queue.h中;
(4)以下是测试你所设计的类的程序:
   #include <iostream.h>
   #include "queue.h"
   void main()
   {
      Queue<int>  iq;
      for(int i=0; i < 10; i++)
       iq.add(i*5);
      if (!iq.is_empty())
      cout << iq.remove();
      cout << endl;
      if (!iq.is_empty())
        cout << iq;
   }
   要求程序的输出为:
   0
   <5 10 15 20 25 30 35 40 4

解决方案 »

  1.   

    应聘.net开发的,题目出的是c++
      

  2.   

    在C# 2.0里提供了List<T>,你要的要求ms都帮你实现了,我想自己写算法,总写不过ms吧。我个人认为现在的总体的软件开发中算法所站的比重正在减小(我说的总体,算法高手别拍砖),开发效率和软件安全的比重在加大。楼下的认为呢?
      

  3.   

    在C# 2.0里提供了List<T>,你要的要求ms都帮你实现了,我想自己写算法,总写不过ms吧。我个人认为现在的总体的软件开发中算法所站的比重正在减小(我说的总体,算法高手别拍砖),开发效率和软件安全的比重在加大。楼下的认为呢?
    -----------------------------------------
    Nod!