日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

链队的介绍与实现

發布時間:2024/7/5 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 链队的介绍与实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

        • 1 鏈隊定義
        • 2 鏈隊基本操作
        • 3 代碼實現

1 鏈隊定義

隊列的鏈式存儲結構簡稱為鏈隊列,它是限制僅在表頭刪除和表尾插入的單鏈表。顯然僅有單鏈表的頭指針不便于在表尾做插入操作,為此再增加一個尾指針,指向鏈表上的最后一個結點。

typedef int ElemType; typedef struct queue {ElemType data;struct queue *next; } *Queue; typedef struct linkQueue {Queue front;Queue rear; } *LinkQueue;

2 鏈隊基本操作

判斷隊列是否為空

int IsEmpty(LinkQueue Q) {return Q->front == Q->rear; }

入隊

第一個元素進入一個空隊后,front和rear都指向這個元素,后繼的元素陸續進隊,隊尾入,rear指針始終指向最后一個進隊的元素。

void EnQueue(LinkQueue Q, ElemType e) {Queue q = (Queue)malloc(sizeof(struct queue));q->data = e;q->next = NULL;Q->rear->next = q;Q->rear = q; }

出隊

隊頭出,首先進行出隊判空的檢查

void DeQueue(LinkQueue Q, ElemType *e) {if (IsEmpty(Q)) {return;}Queue p = Q->front->next;*e = p->data;Q->front->next = p->next;if (Q->rear == p) {Q->rear = Q->front;}free(p); }

3 代碼實現

#include <stdio.h> #include <stdlib.h> #include <time.h>typedef int ElemType; typedef struct queue {ElemType data;struct queue *next; } *Queue;typedef struct linkQueue {Queue front;Queue rear; } *LinkQueue;LinkQueue InitQueue(void) {LinkQueue Q = (LinkQueue)malloc(sizeof(struct linkQueue));Q->rear = Q->front = (Queue)malloc(sizeof(struct queue));Q->front->next = NULL;return Q; }int IsEmpty(LinkQueue Q) {return Q->front == Q->rear; }void EnQueue(LinkQueue Q, ElemType e) {Queue q = (Queue)malloc(sizeof(struct queue));q->data = e;q->next = NULL;Q->rear->next = q;Q->rear = q; }void DeQueue(LinkQueue Q, ElemType *e) {if (IsEmpty(Q)) {return;}Queue p = Q->front->next;*e = p->data;Q->front->next = p->next;if (Q->rear == p) {Q->rear = Q->front;}free(p); }int main(void) {LinkQueue Q = InitQueue();ElemType e;scanf("%d", &e);EnQueue(Q, e);DeQueue(Q, &e);printf("%d", e); }

運行結果:

總結

以上是生活随笔為你收集整理的链队的介绍与实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。