From eb760af0066e57baa729371a922d3775ee451c94 Mon Sep 17 00:00:00 2001 From: ViolentAyang <76544389+ViolentAyang@users.noreply.github.com> Date: Mon, 21 Mar 2022 14:16:19 +0800 Subject: [PATCH] =?UTF-8?q?Create=20=E9=93=BE=E9=98=9F=E5=85=A5=E9=98=9F?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=EF=BC=88=E5=B8=A6=E5=A4=B4=E7=BB=93=E7=82=B9?= =?UTF-8?q?=EF=BC=89.c?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 队列/链队入队操作(带头结点).c | 43 +++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 队列/链队入队操作(带头结点).c diff --git a/队列/链队入队操作(带头结点).c b/队列/链队入队操作(带头结点).c new file mode 100644 index 0000000..8b4f2d4 --- /dev/null +++ b/队列/链队入队操作(带头结点).c @@ -0,0 +1,43 @@ +#include +#include +#include +#define MaxSize 10 + +typedef struct LinkNode{ + int data; + struct LinkNode *next; +}LinkNode; +typedef struct LinkQueue{ + LinkNode *front,*rear; +}LinkQueue; + +//初始化队列(带头结点) +void InitQueue(LinkQueue *Q){ + Q->front = Q->rear = (LinkNode*)malloc(sizeof(LinkNode)); + Q->front->next= NULL; +} +//入队(带头结点) +void EnQueue(LinkQueue *Q,int x){ + LinkNode *s = (LinkNode*)malloc(sizeof(LinkNode)); + s->data = x; + s->next = NULL; + Q->rear->next = s; + Q->rear = s; +} +//判断队列是否为空 +bool IsEmpty(LinkQueue Q){ + if(Q.front==Q.rear){ + return true; + }else{ + return false; + } +} +int main(){ + LinkQueue Q; + InitQueue(&Q); + printf("队列是否为空:%d\n",IsEmpty(Q)); + EnQueue(&Q,100); + printf("当前队尾元素:%d\n",Q.rear->data); + printf("队列是否为空:%d\n",IsEmpty(Q)); + return 0; +}