您现在的位置是:主页 > news > 网站备案图标/网站恶意点击软件
网站备案图标/网站恶意点击软件
admin2025/5/24 0:21:30【news】
简介网站备案图标,网站恶意点击软件,优秀网络广告案例分析,做黄网站有哪些目录循环队列的存储结构循环队列的初始化 InitQueue(SqQueue& Q)循环队列判空 isEmpty(SqQueue Q)循环队列 入队 EnQueue(SqQueue& Q, ElemType x)循环队列出队 DeQueue(SqQueue& Q, ElemType& x)循环队列 待出队元素 Getfront(SqQueue& Q, ElemType& …
网站备案图标,网站恶意点击软件,优秀网络广告案例分析,做黄网站有哪些目录循环队列的存储结构循环队列的初始化 InitQueue(SqQueue& Q)循环队列判空 isEmpty(SqQueue Q)循环队列 入队 EnQueue(SqQueue& Q, ElemType x)循环队列出队 DeQueue(SqQueue& Q, ElemType& x)循环队列 待出队元素 Getfront(SqQueue& Q, ElemType& …
目录
- 循环队列的存储结构
- 循环队列的初始化 InitQueue(SqQueue& Q)
- 循环队列判空 isEmpty(SqQueue Q)
- 循环队列 入队 EnQueue(SqQueue& Q, ElemType x)
- 循环队列出队 DeQueue(SqQueue& Q, ElemType& x)
- 循环队列 待出队元素 Getfront(SqQueue& Q, ElemType& x)
- 遍历队列元素 printQueue(SqQueue Q)
- 测试代码
- 测试截图
循环队列的存储结构
#include<stdio.h>
#include<stdlib.h>
#define MaxSize 5 //注意这里是没有分号的,有会报错typedef int ElemType;
typedef struct {ElemType data[MaxSize]; //存储MaxSize-1个元素 空出来一个元素,用于判空int front, rear; //队列头 队列尾
}SqQueue;
循环队列的初始化 InitQueue(SqQueue& Q)
// 循环队列的初始化
void InitQueue(SqQueue& Q) {Q.rear = Q.front = 0;
}
循环队列判空 isEmpty(SqQueue Q)
bool isEmpty(SqQueue Q) {if (Q.front == Q.rear) return true;else return false;
}
循环队列 入队 EnQueue(SqQueue& Q, ElemType x)
// 入队
bool EnQueue(SqQueue& Q, ElemType x) {if ((Q.rear + 1) % MaxSize == Q.front) return false;Q.data[Q.rear] = x;Q.rear = (Q.rear + 1) % MaxSize;return true;
}
循环队列出队 DeQueue(SqQueue& Q, ElemType& x)
// 出队
bool DeQueue(SqQueue& Q, ElemType& x) {if (isEmpty(Q)) return false;x = Q.data[Q.front];Q.front = (Q.front + 1) % MaxSize;return true;
}
循环队列 待出队元素 Getfront(SqQueue& Q, ElemType& x)
// 待出队元素
bool Getfront(SqQueue& Q, ElemType& x) {if (isEmpty(Q)) return false;x = Q.data[Q.front];return true;
}
遍历队列元素 printQueue(SqQueue Q)
// 遍历队列
void printQueue(SqQueue Q) {printf("此时队列元素为:");while (Q.rear != Q.front){printf("%d ", Q.data[Q.front]);Q.front = (Q.front + 1) % MaxSize;}printf("\n");
}
测试代码
void test_Queue() {SqQueue Q;ElemType element;//存储出队元素bool ret;InitQueue(Q); // 初始化循环队列printf("队列容量为: %d\n", MaxSize - 1);for (int i = 0; i < MaxSize - 1; i++){printf("请输入第%d个元素: ", i + 1);scanf_s("%d", &element);EnQueue(Q, element);}printf("队列建立成功\n\n");ret = DeQueue(Q, element);if (ret) printf("出队元素为:%d\n", element);ret = Getfront(Q, element);printQueue(Q);if (ret) printf("此时待出队元素为:%d\n", element);
}