佇列不同於棧,它是先進先出,即先入佇列的元素提取時也要先出佇列。佇列可以用陣列實現也可以用鍊錶實現,挺簡單的,但是很有些情況下很有用。它的實現只要維持好隊首和隊尾指標就好了。下面是我實現的鍊錶佇列。
queue.h
#ifndef __queue_h
#define __queue_h
#include #include struct queuenode;
struct queue;
typedef vertex elementtype;
typedef struct queuenode *node;
typedef struct queue *queue;
struct queuenode
;struct queue
;queue createqueue();
int isempty(queue q);
void enqueue(elementtype x,queue q);
elementtype dequeue(queue q);
void deletequeue(queue q);
#endif
queue.c
#include "queue.h"
queue createqueue()
node->next=null;
q=(queue)malloc(sizeof(struct queue));
if(q==null)
q->first=node;
q->last=node;
return q;
}int isempty(queue q)
void enqueue(elementtype x,queue q)
node->element=x;
node->next=null;
q->last->next=node;
q->last=node;
}elementtype dequeue(queue q)
p=q->first->next;
q->first->next=p->next;
x=p->element;
if(p==q->last)
free(p);
return x;
}void deletequeue(queue q)
}
佇列(c語言實現)
目錄前言 一 佇列是什麼?二 佇列的屬性與操作以及種類 1.佇列屬性 2.佇列操作 3.佇列種類 三 佇列的實現 c語言 總結 本文旨在幫助剛接觸佇列的人更快的掌握,語言不夠嚴謹,望海涵。栗子 一對情侶準備在情人節去電影院看電影,男的是個身穿格仔衫的程式設計師,我們就稱之為小木,由於排隊買票的人特別...
佇列 c語言實現
佇列 先進先出 define minquesize 5 typedef struct treenode elemtype typedef struct myqueue myqueue creatqueue int capacity myqueue res malloc sizeof myqueue ...
C語言實現佇列
1 ifndef queue h 2 define queue h 34 include 5 6 typedef int qdatatype 資料型別 78 typedef struct listnode 通過鍊錶實現的 9listnode,plistnode 1314 typedef struct...