当前位置:  编程技术>c/c++/嵌入式

用C++实现队列的程序代码

    来源: 互联网  发布时间:2014-10-17

    本文导语:  C++实现队列,如有不足之处,还望指正 代码如下:// MyQueue.cpp : 定义控制台应用程序的入口点。//实现链式队列(queue),包括一个头结点。队列操作包括在队头出队(pop)、在队尾入队(push)、//取得队头元素(front_element)、...

C++实现队列,如有不足之处,还望指正
代码如下:

// MyQueue.cpp : 定义控制台应用程序的入口点。
//实现链式队列(queue),包括一个头结点。队列操作包括在队头出队(pop)、在队尾入队(push)、
//取得队头元素(front_element)、取得队尾元素(back_element)、队列元素个数(size)、
//队列是否为空(empty)。
#include "stdafx.h"
#include
using namespace std;
//定义队列的节点结构
template
struct NODE
{
 NODE* next;
 T data;
};
template
class MyQueue
{
public:
 MyQueue()
 {
  NODE* p = new NODE;
  if (NULL == p)
  {
   cout next = NULL;
  front = p;
  rear = p;
 }
//在队尾入队
 void push(T e)
 {
  NODE* p = new NODE;
  if (NULL == p)
  {
   cout next = NULL;
  rear->next = p;
  rear = p;
 }
//在队头出队
 T pop()
 {
  T e;
  if (front == rear)
  {
   cout next = p->next;
   e = p->data;
   //注意判断当只有一个元素,且删除它之后,rear指向的node被删除
   //应将其指向头结点
   if (rear == p)
   {
    rear = front;
   }
   delete p; p = NULL;
   return e;
  }
 }
 //取得队头元素
 T front_element()
 {
  if (front == rear)
  {
   cout data;
  }
 }
 T back_element()
 {
  if (front == rear)
  {
   cout next;
   count++;
  }
  return count;
 }

 //判断队列是否为空
 bool empty()
 {
  if (front == rear)
  {
   return true;
  }
  else
  {
   return false;
  }
 }
private:
 NODE* front; //指向头结点的指针。 front->next->data是队头第一个元素。
 NODE* rear;//指向队尾(最后添加的一个元素)的指针
};
int _tmain(int argc, _TCHAR* argv[])
{
 MyQueue myqueue;
 cout

    
 
 

您可能感兴趣的文章:

  • Base64编码原理详解及c++编码解码实现
  • 我实现了个J2EE技术的服务器,支持TCP、UDP和数据库,由于性能的原因,需要改为C或C++实现,我是C、C++新手,我该如何入手呢?看什么样的
  • c++实现MD5算法代码示例
  • java 与 C++ 实现后绑定的方法
  • c++通用模板类(template class)定义实现详细介绍
  • Qt实现的C++框架 qtioccontainer
  • 用C或C++实现主存的分配与回收
  • 在linux系统上,如何用C++实现获取和设置系统时间?
  • 文本压缩算法C++实现 Golden Huffman
  • C++标准库实现 libc++
  • C++的XMLRPC实现 XMLRPC++
  • Java/JavaScript API 的 C++ 实现 libj
  • c++ 连接两个字符串实现代码 实现类似strcat功能
  • c++在unix中如何实现CString的方法?或者说有没有替换CString的类?
  • 请问:java中如何实现C++中的sizeof()方法?
  • 用C或C++编程,模拟可变分区存储管理且首次适应的算法实现存储器的分配与回收
  • vim中如何实现c++代码编写的自动格式化和语法高亮的功能?
  • C++实现CreatThread函数主线程与工作线程交互的方法
  • 请教为什么在C++编译通过并实现的程序,在linux下就会出错
  • linux下c++怎样实现回调(CALLBACK)函数?
  • 在linux下如何用c++实现建立一个文件夹
  • 单个消息队列能实现进程间聊天功能吗?
  • 用JAVA怎样去实现队列,较好?
  • PHP双向队列实现代码
  • uclinux-2.4怎么实现如2.6的工作队列?
  • linux多线程怎么实现等待队列
  • 解析如何用两个栈来实现队列的方法
  • 如何使用shell脚本实现监控程序消息队列阻塞情况?
  • C语言循环队列的表示与实现实例详解
  • 解析C++无锁队列的实现代码
  • C语言单链队列的表示与实现实例详解
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • 用正则实现提取代码内容的代码
  • 通过javascript库JQuery实现页面跳转功能代码
  • 请问高手:Ctrl+Alt+F1~F8可以切换虚拟终端,这个代码是在哪儿实现的?我搞不懂,最好指点源代码大概位置。
  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • servlet中怎么实现java代码和html代码的分离????
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 如何用代码手工实现激活事件发生
  • php实现socket实现客户端和服务端数据通信源代码
  • python 实现文件的递归拷贝实现代码
  • C#/.NET字符串加密和解密实现(AES和RSA代码举例)
  • 代码实现Radius服务模拟的问题,熟悉Radius服务的大虾请进!
  • Linux下c函数dlopen实现加载动态库so文件代码举例
  • JQuery实现元素屏幕居中显示的代码
  • Session id实现通过Cookie来传输方法及代码参考
  • css创意ul+li实现的细线表格实现代码
  • JavaScript实现页面跳转的几种方法(参考代码)
  • winform下实现win7 Aero磨砂效果实现代码
  • java实现判断字符串是否全是数字的四种方法代码举例
  • jQuery 表格隔行换色 鼠标高亮行变色的实现代码
  • windows下c/c++读写锁实现原理及代码参考
  • 如何实现代码的提示
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • socket实现多文件并发传输,求助多线程实现问题?
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • interface 到底有什么用???实现接口,怎么实现??
  • flash AS3反射实现(describeType和getDefinitionByName)
  • 怎么用Jsp实现在页面实现树型结构?
  • boost unordered_map和std::list相结合的实现LRU算法
  • c/c++ iis7站长之家
  • 使用java jdk中的LinkedHashMap实现简单的LRU算法




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3