顺序队列学习
来源:互联网 发布:港股交易规则 知乎 编辑:程序博客网 时间:2024/05/16 07:13
#include<stdio.h>#include<stdlib.h>#define QUEUE_SIZE 100typedef int ElemType;typedef struct { ElemType *base; ElemType rear; int queuesize;}SqQueue;//初始化顺序队列int InitSqQueue(SqQueue &Q){ Q.base=(ElemType *)malloc(QUEUE_SIZE*sizeof(ElemType)); Q.rear=0; Q.queuesize=QUEUE_SIZE; return 0;}//插入元素int EnSqQueue(SqQueue &Q,ElemType e){ if(Q.rear==Q.queuesize) return -1; Q.base[Q.rear++]=e; return 0;}//删除元素int DeSqQueue(SqQueue &Q,ElemType e){ int i; if(Q.rear){ e=*Q.base; for(i=1;i<Q.rear;i++) Q.base[i-1]=Q.base[i]; Q.rear--; return e; } else return -1;}//得到元素int GetSqQueue(SqQueue Q,ElemType &e){ if(Q.rear){ e=*Q.base; return e; } else return -1;}//判空int EmptySqQueue(SqQueue Q){ if(Q.rear==0) return 1; else return 0;}//清空顺序队列int ClearSqQueue(SqQueue &Q){ Q.rear=0; return 0;}int main(){ SqQueue Q;int e,i;InitSqQueue(Q);printf("%d",EmptySqQueue(Q));printf("\n");EnSqQueue(Q,2);EnSqQueue(Q,1);EnSqQueue(Q,3);printf("%d",EmptySqQueue(Q));printf("\n");GetSqQueue(Q,e);printf("%d ", e);printf("\n");DeSqQueue(Q,e);printf("%d ",e);printf("\n");ClearSqQueue(Q);printf("%d ",EmptySqQueue(Q));EnSqQueue(Q,1);EnSqQueue(Q,2);EnSqQueue(Q,3);printf("\n");for(i=0;i<Q.rear;i++){printf("%d ",Q.base[i]);} return 0;}
0 0
- 顺序队列学习
- 数据结构学习记录-顺序队列
- 数据结构学习----顺序循环队列(Java实现)
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- 顺序队列
- php 时间处理
- hdu 2102 A计划 bfs搜索 解题报告
- 安卓软件的欢迎界面,只显示一次。
- 【LeetCode-209】Minimum Size Subarray Sum
- 数据库 之 索引
- 顺序队列学习
- Linux FTP 服务器配置简单说明
- 可失败构造函数用法
- DOM EventListener
- 块设备驱动程序<一>
- android不同线程之间数据交互
- CATransition转场动画
- HTTP深入浅出 http请求
- mysql5.7 新特性