# Queue Operator

Simple Queue Operator

#include <iostream.h>
#include <stdio.h>
#include <malloc.h>
typedef struct student{
int data;
struct student *next;
}SNode;
struct student *front,*rear;
}LQueue;

bool InitLQueue(LQueue &LQ){
LQ.front=(SNode *)malloc(sizeof(SNode));
if(!LQ.front) return false;
LQ.rear=LQ.front;
LQ.front->next=NULL;
return true;
}
bool InsertQueue(LQueue &LQ,int x){
SNode *s;
s=(SNode*)malloc(sizeof(SNode));
if(!s) return false;
s->data=x;
s->next=NULL;
LQ.rear->next=s;
LQ.rear=s;
return true;
}
bool DeQueue(LQueue &LQ, int &e){
if(LQ.front == LQ.rear) return false;
SNode * s=LQ.front->next;
e=s->data;
LQ.front->next=s->next;
if(LQ.rear==s) LQ.rear=LQ.front;
free(s);
return true;
}
int GetLengthLQ(SNode *LN){
int n=0;
SNode *p=LN;
while(p)
{
p=p->next;
n++;
}
return n;
}
void DisplayLQ(LQueue &LQ){
SNode *p=LQ.front->next;
while(p){
printf("%d/n",p->data);
p=p->next;
}
}

-------------------------------------------------------------------------------------------------------------------

Loop  Queue Operator

#include <stdio.h>
#include <malloc.h>
#define MAXQSIZE 6
typedef struct {
int *base;
int front;
int rear;
}LSQueue;

bool InitQueue(LSQueue &Q){
Q.base= (int *) malloc (MAXQSIZE*sizeof(int));
if(!Q.base)return false;
Q.front=Q.rear=0;
return true;
}
bool EnQueue(LSQueue &Q,int e){
if((Q.rear+1)%MAXQSIZE == Q.front)return false;
Q.base[Q.rear]=e;
Q.rear= (Q.rear+1)% MAXQSIZE;
return true;
}
bool DeQueue(LSQueue &Q,int &e){
if(Q.front == Q.rear) return false;
e=Q.base[Q.front];
Q.front=(Q.front+1)%MAXQSIZE;
return true;
}
void DisplayLSQ(LSQueue &Q){
LSQueue p =Q;
while(p.front != p.rear){
printf("%d/n",p.base[p.front]);
p.front = (p.front +1)%MAXQSIZE;
}
}

• 本文已收录于以下专栏：

## priority_queue的使用：简单类型与结构体

# include # include using namespace std; struct NODE { int i,j; friend bool operator > (con...
• mmc2015
• 2016年01月08日 20:48
• 883

## C++/C++11中std::priority_queue的使用

C++/C++11中std::priority_queue的使用
• fengbingchun
• 2017年04月23日 16:08
• 1937

## C++ 类的重载运算符和priority_queue综合使用

• Bingtang_blog
• 2016年10月06日 16:42
• 815

## C++之Queue容器初学

Queue简介 ² queue是队列容器，是一种“先进先出”的容器。 ² queue是简单地装饰deque容器而成为另外的一种容器。 ² #include   queue对象的默认构造 q...
• sum_TW
• 2017年02月13日 23:54
• 2014

## 关于最小堆以及priority_queue

• xiatianhappy
• 2016年04月03日 16:48
• 1424

## c++通过指针实现队列

• justperseve
• 2016年05月21日 16:58
• 1544

## operator关键字(重载操作符)

operator是C++的关键字，它和运算符一起使用，表示一个运算符函数，理解时应将operator=整体上视为一个函数名。  这是C++扩展运算符功能的方法，虽然样子古怪，但也可以理解： 一方面要使...
• DaveBobo
• 2016年04月16日 21:58
• 3562

## 请谨慎实现operator==操作符函数

• hello_wyq
• 2007年02月06日 10:01
• 3105

## operator*( )的重载（对于const修饰的成员变量的理解）

• LookAtTheStars
• 2016年07月03日 16:11
• 1216

## C++那些细节--中operator=相关问题

C++中关于operator=的相关知识整理，涉及深拷贝浅拷贝，以及一些拷贝构造函数的知识...
• puppet_master
• 2015年07月23日 14:09
• 6041

举报原因： 您举报文章：Queue Operator 色情 政治 抄袭 广告 招聘 骂人 其他 (最多只允许输入30个字)