Queue Operator

原创 2007年09月29日 12:31:00

Simple Queue Operator

#include <iostream.h>
#include <stdio.h>
#include <malloc.h>
typedef struct student{
 int data;
 struct student *next;
}SNode;
typedef struct linkqueue{
 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;
 }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

operator theory

  • 2015-10-23 13:33
  • 17.91MB
  • 下载

PSSu E F 4DO_operator manual

  • 2015-06-04 09:46
  • 1.96MB
  • 下载

error LNK2001: 无法解析的外部符号 "void * __cdecl operator new(unsigned int)"

error LNK2001: 无法解析的外部符号 "void * __cdecl operator new(unsigned int)" Posted on 2005-03-18 15:09 j...

PSSu E F 4DI_operator manual

  • 2015-06-04 09:43
  • 1.92MB
  • 下载

matrix simple operator

C++关键字operator用法

1. operator 用于类型转换函数:类型转换函数的特征:1) 型转换函数定义在源类中; 2) 须由 operator 修饰,函数名称是目标类型名或目标类名; 3) 函数没有参数,没有...

Zigbee Operator V1.0.0.137

  • 2012-09-16 18:02
  • 2.67MB
  • 下载

ZigBee Operator

  • 2012-06-02 18:57
  • 2.79MB
  • 下载

以模板的方式重载"operator <<"需要注意的地方

当我们用C++进行后台开发的时候,常常xuhao

operator

  • 2006-02-23 09:05
  • 28KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)