mirror of
https://github.com/by777/dataStructureForC.git
synced 2026-02-03 10:03:14 +08:00
。。。注释头
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
/*
|
||||
* @Author: Xu Bai
|
||||
* @Date: 2019-07-03 21:37:15
|
||||
* @LastEditors: Xu Bai
|
||||
* @LastEditTime: 2019-07-03 22:46:26
|
||||
*/
|
||||
|
||||
#include "stdlib.h"
|
||||
#include "stdio.h"
|
||||
#include "io.h"
|
||||
@@ -44,7 +51,7 @@ Status DestroyQueue(LinkQueue *Q)
|
||||
{
|
||||
while (Q->front)
|
||||
{
|
||||
// Q->rear没啥用就拿来作为临时变量存储后继节点
|
||||
// Q->rearûɶ<EFBFBD>þ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>洢<EFBFBD><EFBFBD>̽ڵ<EFBFBD>
|
||||
Q->rear = Q->front->next;
|
||||
free(Q->front);
|
||||
Q->front = Q->rear;
|
||||
@@ -54,7 +61,7 @@ Status DestroyQueue(LinkQueue *Q)
|
||||
|
||||
Status ClearQueue(LinkQueue *Q)
|
||||
{
|
||||
// 与销毁相比保留了front结点
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>front<EFBFBD><EFBFBD><EFBFBD>
|
||||
QueuePtr p, q;
|
||||
Q->rear = Q->front;
|
||||
p = Q->front->next;
|
||||
@@ -111,7 +118,7 @@ Status EnQueue(LinkQueue *Q, ElemType e)
|
||||
}
|
||||
p->data = e;
|
||||
p->next = NULL;
|
||||
Q->rear->next = p; //添加到链尾
|
||||
Q->rear->next = p; //<EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD>β
|
||||
Q->rear = p;
|
||||
return OK;
|
||||
}
|
||||
@@ -127,8 +134,8 @@ Status DeQueue(LinkQueue *Q, ElemType *e)
|
||||
Q->front->next = p->next;
|
||||
if (Q->rear == p)
|
||||
{
|
||||
// 若链表除头节点外只剩下一个元素时,则需将rear指向头节点
|
||||
//若队头就是队尾,则删除后将rear指向front
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>ֻʣ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>轫rearָ<EFBFBD><EFBFBD>ͷ<EFBFBD>ڵ<EFBFBD>
|
||||
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>β<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>rearָ<EFBFBD><EFBFBD>front
|
||||
Q->rear = Q->front;
|
||||
}
|
||||
free(p);
|
||||
@@ -161,17 +168,17 @@ int main()
|
||||
EnQueue(&q, -5);
|
||||
EnQueue(&q, 5);
|
||||
EnQueue(&q, 10);
|
||||
printf("插入3个元素(-5,5,10)后,队列的长度为%d\n", QueueLength(q));
|
||||
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD>(-5,5,10)<29><>,<2C><><EFBFBD>еij<D0B5><C4B3><EFBFBD>Ϊ%d\n", QueueLength(q));
|
||||
QueueTraverse(q);
|
||||
i = GetHead(q, &e);
|
||||
if (i == OK)
|
||||
printf("队头元素是:%d\n", e);
|
||||
printf("<EFBFBD><EFBFBD>ͷԪ<EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD>%d\n", e);
|
||||
DeQueue(&q, &e);
|
||||
printf("删除了队头元素%d\n", e);
|
||||
printf("ɾ<EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD>ͷԪ<EFBFBD><EFBFBD>%d\n", e);
|
||||
QueueTraverse(q);
|
||||
ClearQueue(&q);
|
||||
printf("清空队列后,q.front=%u q.rear=%u q.front->next=%u\n", q.front, q.rear, q.front->next);
|
||||
printf("<EFBFBD><EFBFBD>ն<EFBFBD><EFBFBD>к<EFBFBD>,q.front=%u q.rear=%u q.front->next=%u\n", q.front, q.rear, q.front->next);
|
||||
DestroyQueue(&q);
|
||||
printf("销毁队列后,q.front=%u q.rear=%u\n", q.front, q.rear);
|
||||
printf("<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD><EFBFBD>к<EFBFBD>,q.front=%u q.rear=%u\n", q.front, q.rear);
|
||||
getchar();
|
||||
}
|
||||
Reference in New Issue
Block a user