資料結構中佇列的鏈式儲存結構的基本操作

2021-08-15 08:52:58 字數 965 閱讀 1163

#include #include /* 定義:front指標指向頭結點,當front==rear時,表示空佇列 */

typedef int qelemtype;

typedef struct qnodeqnode,*queueptr;

typedef structlinkqueue;

//初始化

void init_queue(linkqueue *q)

} //入隊

void in_queue(linkqueue *q,qelemtype e)

} //出隊

void out_queue(linkqueue *q,qelemtype *e)

queueptr p;

p=q->front->next;

q->front->next=p->next;

*e=p->data;

if(q->rear==p) //如果佇列只有乙個元素,則需要更改尾指標

q->rear=q->front;

free(p);

p=null;

q->size--;

}//清空佇列

void clear_queue(linkqueue *q)

q->rear=q->front; //不要忘記將尾指標重新指向頭結點

q->rear->next=null; //並將頭結點的next指標賦值為空

q->size=0;

} printf("ok\n");

} //列印佇列

void print_queue(linkqueue *q)

queueptr p;

p=q->front->next;

while(p!=null)

printf("\n");

}int main()

} return 0;

}

資料結構中佇列

佇列 queue 是只允許在一端進行插入操作,而在另一端進行刪除操作的線性表 佇列是一種先進後出 first in first out 1 佇列的順序儲存結構 佇列的頭尾相接的順序儲存結構成為迴圈佇列,如下圖所示 判斷佇列滿不滿 當隊列為空時,front rear 當佇列滿時,我們修改其條件,保留乙...

資料結構 佇列的鏈式儲存

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

資料結構 佇列 佇列的鏈式儲存結構

資料結構 佇列 佇列的鏈式儲存結構 用單鏈表實現 date 2017 4 16 include include define elemtype char define initsize 100 typedef struct lnodelnode typedef structlinkqueue voi...