資料結構 佇列(鏈式儲存)

2021-09-24 20:55:37 字數 673 閱讀 3321

資料結構和演算法

【摘要】前一篇部落格主要討論迴圈佇列,但是迴圈佇列都是事先申請好空間,使用期間是不能釋放的。但是鏈佇列,每次都可以進行申請和釋放結點。再無法預估佇列長度的時候,我們可以考慮用鏈佇列。 

(1)設計佇列資料結構

/*結點結構*/

typedef struct _queue_node

queue_node,*queueptr;

/*佇列的鍊錶結構*/

typedef struct linkqueue

linkqueue;

(2) 初始化佇列

status init_queue(linkqueue* pqueuenode)

(3) 把資料壓入佇列

status insert_queue(linkqueue* pqueuenode, int value)

(4)把資料彈出佇列

status get_queue_data(linkqueue* pqueuenode, int* value)

*/free(s);

s = null;

pqueuenode-> count--;

return true;

}(5)統計當前佇列中有多少資料

int  get_total_number(const linkqueue* pqueuenode)

資料結構 佇列 順序儲存結構佇列 鏈式儲存結構佇列

佇列是一種只允許在一端進行插入操作,而在另外一端進行刪除操作的線性表,特徵是先進先出,包括 順序儲存結 構佇列 鏈式儲存結構佇列。重點說明 迴圈佇列和鏈隊。在佇列中front為隊頭指標 rear為隊尾指標 佇列 佇列空的條件 rear front 佇列滿的條件 rear 1 queuesize fr...

資料結構之佇列(鏈式儲存)

一 佇列結點package linkedqueue packagname linkedqueue classname linkedqueuenode date 2017 1 25 author cullianns des 鏈式儲存結點結構 public class linkedqueuenode 二...

資料結構 佇列的鏈式儲存

佇列的順序儲存 佇列的鏈式儲存 佇列的應用 列印楊輝三角 include include typedef struct nodenode,nodep typedef struct baglinklist linklistp void initialquene linklistp q intpushq...