队列实现栈
oj链接
实现思路
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/22c6f25e39cb138d2912e17420f088bb.png)
c语言实现代码
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
#include<assert.h>
typedef int QDataType;
typedef struct QListNode
{
struct QListNode* next;
QDataType data;
}QNode;
typedef struct Queue
{
QNode* front;
QNode* rear;
}Queue;
void QueueInit(Queue* q);
void QueuePush(Queue* q, QDataType x);
void QueuePop(Queue* q);
QDataType QueueFront(Queue* q);
QDataType QueueBack(Queue* q);
int QueueSize(Queue* q);
bool QueueEmpty(Queue* q);
void QueueDestroy(Queue* q);
void QueueInit(Queue* q)
{
assert(q);
q->front = q->rear = NULL;
}
void QueuePush(Queue* q, QDataType x