linkqueue.h

来自「完全由C语言实现的图的相关操作」· C头文件 代码 · 共 38 行

H
38
字号
#ifndef LINKQUEUE_H
#define LINKQUEUE_H
#include "head.h" 
/**  单链队列----队列的链式存储结构*/
typedef struct QNode
{
  int data;
  struct QNode* next;
}QNode , *QueuePtr ;

typedef struct LinkQueue 
{
  QueuePtr front ;  //队头指针
  QueuePtr rear  ;  // 队尾指针
}LinkQueue; 

/**---基本操作的函数原型说明-----*/
Status InitQueue(LinkQueue* Q);
// 构造一个空的队列Q ,操作成功返回OK,不成功则返回ERROR 
Status DestroyQueue(LinkQueue* Q);
//销毁队列Q ,Q不再存在,操作成功返回OK,不成功则返回ERROR  
Status ClearQueue(LinkQueue* Q) ;
// 将Q清为空队列,操作成功返回OK,不成功则返回ERROR 
int QueueEmpty(LinkQueue* Q);
// 若队列Q为空队列,则返回ture,否则返回false 
int QueueLength(LinkQueue* Q);
//返回Q的元素的个数,即为队列的长度
Status GetHead(LinkQueue* Q,int* e);
// 若队列不空,则用e返回队头元素,操作成功返回OK,不成功则返回ERROR  
Status EnQueue(LinkQueue* Q,int e);
//插入元素e为Q的新的队尾元素。操作成功返回OK,不成功则返回ERROR 
Status DeQueue(LinkQueue* Q,int* e);
// 若队列不空,则删除Q的队头元素,并用e返回队头元素的值,操作成功返回OK,不成功则返回ERROR 
Status QueueTraverse(LinkQueue* Q);
//从队头到队尾依次对队列Q中的每一个元素进行遍历

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?