資料結構之佇列

2021-10-02 18:32:58 字數 2452 閱讀 1502

佇列的鏈式儲存結構簡稱鏈佇列,它是限制僅在表頭進行刪除操作和表尾進行插入操作的單鏈表。

需要兩類不同的結點:資料元素結點,佇列的隊首指標和隊尾指標的結點。

資料元素結點型別定義

typedef struct qnode qnode;
指標結點型別定義

typedef struct link_queue link_queue;
鏈佇列初始化

link_queue* init_linkqueue(void)
鏈佇列的入隊操作

status insert_cirqueue(link_queue* q, elemtype e)
鏈佇列的出隊操作

status delete_linkqueue(link_queue* q, elemtype* x)
鏈佇列的頭結點元素提取

status get_linkqueue(link_queue* q, elemtype* x)
鏈佇列的撤銷

status free_linkqueue(link_queue* q) 

//return ok;

while (q->front!=null)

return ok;

}

列印鏈佇列中元素

status printf_linkqueue(link_queue* q) 

return ok;

}

全部**

#define _crt_secure_no_warnings

#include "queue.h"

#include #include#define error 0

#define ok 1

typedef int elemtype;

typedef int status;

typedef struct qnode qnode;

typedef struct link_queue link_queue;

link_queue* init_linkqueue(void)

status insert_cirqueue(link_queue* q, elemtype e)

status delete_linkqueue(link_queue* q, elemtype* x)

status printf_linkqueue(link_queue* q)

return ok;

}status free_linkqueue(link_queue* q)

//return ok;

while (q->front!=null)

return ok;

}status get_linkqueue(link_queue* q, elemtype* x)

int main(void)

為充分利用向量空間,克服「假溢位」現象的方法是:將為佇列分配的向量空間看成為乙個首尾相接的圓環,並將這種佇列成為迴圈佇列(circular queue)。

結點型別定義

typedef struct seqqueue seqqueue;
迴圈佇列的初始化

void initseqqueue(seqqueue* q)
入隊操作

status enterseqqueue(seqqueue* q, int x)
出隊操作

status deleteseqqueue(seqqueue* q, int* x)
迴圈佇列列印

void printfseqqueue(seqqueue s) 

}

迴圈佇列全部**

#include #include#define error 0

#define ok 1

#define maxsize 50 /*佇列的最大長度*/

typedef int elemtype;

typedef int status;

typedef struct seqqueue seqqueue;

void initseqqueue(seqqueue* q)

status enterseqqueue(seqqueue* q, int x)

status deleteseqqueue(seqqueue* q, int* x)

void printfseqqueue(seqqueue s)

}int main(void)

希望堅持把資料結構學完

資料結構之佇列

八 佇列 鏈式佇列 鍊錶實現 隊尾 rear 隊首 front 靜態佇列 陣列實現 必須是迴圈佇列 需要幾個引數來確定,各引數含義 1 佇列初始化 front和rear值都是0 2 佇列非空 front代表佇列第乙個元素 rear代表佇列最後乙個元素的 下乙個元素 3 佇列空 front和rear相...

資料結構之佇列

與棧相反,佇列是一種先進先出的線性表,它只允許在表的一端進行,而在另一端刪除元 素。在佇列中,允許插入的一端叫做隊尾,允許刪除的一端則稱為隊頭。1 鏈佇列 佇列的鏈式表示和實現 用鍊錶表示的佇列簡稱為鏈佇列,乙個鏈佇列顯然需要兩個分別指示對頭和隊尾的指標 分別稱為頭指 針和尾指標 才能唯一確定。這裡...

資料結構之佇列

一 佇列的介紹 佇列 queue 是一種線性儲存結構。它有以下幾個特點 1 佇列中資料是按照 先進先出 fifo,first in first out 方式進出佇列的。2 佇列只允許在 隊首 進行刪除操作,而在 隊尾 進行插入操作。佇列通常包括的兩種操作 入佇列 和 出佇列。1.佇列的示意圖 佇列中...