資料結構 佇列

2021-10-06 03:18:15 字數 2342 閱讀 7730

1.只能在一端插入,而在另一端刪除的有序序列,這樣的資料組織方式稱為「佇列」(頭刪尾加)

2.設乙個佇列q=(a1,a2……an),則

a1:隊頭元素

an:隊尾元素

3.佇列中先插入的資料先被刪除,故佇列又被稱為「先進先出」表(fist in first out,fifo)

型別名稱:佇列(queue)

資料物件集:乙個有0個或多個元素的有窮線性表

操作集:

1.queue createqueue( int maxsize ):生成空佇列,其最大長度為maxsize

2.bool isfull( queue q ):判斷佇列q是否已滿

3.bool addq( queue q, elementtype x )將元素壓入佇列q

4.bool isempty( queue q ):判斷佇列q是否為空

5.elementtype deleteq( queue q ):刪除並返回佇列頭元素,若此時隊列為空返回error

#include

#include

#define error -1

typedef

int position;

struct qnode

;typedef

struct qnode *queue;

queue createqueue

(int maxsize )

; bool isfull

( queue q )

; bool addq

( queue q,

int x )

;bool isempty

( queue q )

;int

deleteq

( queue q )

;//返回佇列頭元素,如刪除後隊列為空返回error

void

p(queue q)

;int

main()

void

p(queue q)

else

}printf

("列印完成\n");

}queue createqueue

(int maxsize )

bool isfull

( queue q )

bool addq

( queue q,

int x )

else}

bool isempty

( queue q )

intdeleteq

( queue q )

else

else

}}

//佇列的鏈式儲存 

#include

#include

#define error -1

typedef

int elementtype;

typedef

struct node *ptrtonode;

struct node

;typedef ptrtonode position;

typedef

struct qnode * ptrtoqnode;

struct qnode

;typedef

struct qnode *queue;

void

p(queue q)

;queue createqueue()

; bool addq

(queue q,elementtype x)

;bool isempty

( queue q )

; elementtype deleteq

( queue q )

;int

main()

void

p(queue q)

else

}printf

("列印完成\n");

}//void p(queue q)

// else

// }

// printf("列印完成\n");

//}queue createqueue()

bool addq

(queue q,elementtype x)

else

}bool isempty

( queue q )

elementtype deleteq

( queue q )

else

}

結構體指標改變佇列問題

資料結構 佇列

一 佇列的迴圈陣列實現。1 初始化 空佇列。令rear front 0。2 入佇列 約定rear指向佇列尾元素的下乙個位置。入佇列時,先判斷佇列是否已滿,而後將array rear x 然後rear 3 出佇列 約定front指向佇列的首元素位置。出佇列時,先判斷佇列是否為空,而後返回隊首元素re ...

資料結構 佇列

資料參考自 資料結構c 語言描述 佇列是一種先進先出的資料結構,這與棧正好相反。下例是簡單的queue實現 queue.h檔案 ifndef queue h define queue h include include 資料元素結構 自定義 struct datatype 佇列元素最大數 const...

資料結構 佇列

code for fun created by dream whui 2015 1 25 include stdafx.h include include using namespace std define true 1 define false 0 define ok 1 define erro...