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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

c语言队列如何表示,队列的链式表示和实现(C语言)

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言队列如何表示,队列的链式表示和实现(C语言) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#include

#include

#define OK 1;

#define ERROR 0;

#define OVERFLOW 0;

#define TURE 1;

#define FALSE 0;

typedef int Status;

typedef char QElemType; //隊型數據

//鏈隊中結點的定義

typedef struct QNode {

QElemType data; //數據域

struct QNode *next; //指針域

}QNode,*QueuePtr;

//鏈隊的定義

typedef struct {

QueuePtr front; //隊頭指針

QueuePtr rear; //隊尾指針

}LinkQueue;

//鏈隊的初始化

Status InitQueue(LinkQueue *queue){

queue->front=queue->rear=(QueuePtr)malloc(sizeof(QNode));

if(!queue->front) return OVERFLOW;

queue->front->next=NULL; //頭結點next域置空

return OK;

}

//鏈隊的銷毀

Status DestroyQueue(LinkQueue *queue){

QNode *p;

while(queue->front){

p=queue->front->next;

free(queue->front);

queue->front=p;

}

return OK;

}

//元素入隊

Status EnQueue(LinkQueue *queue,QElemType elem){

QueuePtr p=(QueuePtr)malloc(sizeof(QNode));

if(!p) return OVERFLOW;

p->data=elem;

p->next=NULL;

queue->rear->next=p;

queue->rear=p;

return OK;

}

//元素出隊

Status DeQueue(LinkQueue *queue,QElemType *elem){

if(queue->front==queue->rear) return ERROR;

QueuePtr p=queue->front->next; //p指向首元(隊頭元素)

*elem=p->data; //出隊元素的值保存到elem

queue->front->next=p->next;

if(p==queue->rear) queue->rear=queue->front; //如果出隊的是最后一個元素

free(p);

return OK;

}

//取隊頭元素

QElemType GetHead(LinkQueue queue){

if(queue.front==queue.rear) return ERROR;

return queue.front->next->data;

}

int main(void){

LinkQueue queue1; //定義一個鏈隊

//初始化

Status initQueueResult = InitQueue(&queue1);

printf("隊列queue1初始化結果:%d\n",initQueueResult);

//元素入隊

QElemType elem1='Y',elem2='C';

Status enResult = EnQueue(&queue1,elem1);

printf("入隊執行結果:%d\n",enResult);

EnQueue(&queue1,elem2); //將elem2也入隊

printf("隊尾元素值:%c\n",queue1.rear->data);

//元素出隊

QElemType elem3; //出隊的數據放入elem3

Status deResult = DeQueue(&queue1,&elem3);

printf("出隊執行結果:%d\n",deResult);

printf("出隊元素值:%c\n",elem3);

printf("隊尾元素值:%c\n",queue1.rear->data);

//取隊頭元素

QElemType queueHeadValue = GetHead(queue1);

printf("獲取隊頭元素值:%c\n",queueHeadValue);

//鏈隊銷毀

Status destroyResult = DestroyQueue(&queue1);

printf("鏈隊銷毀結果:%d\n",destroyResult);

printf("\nEND");

return 0;

}

標簽:return,隊列,next,queue,queue1,鏈式,front,C語言,rear

來源: https://www.cnblogs.com/petitepluie/p/14599401.html

總結

以上是生活随笔為你收集整理的c语言队列如何表示,队列的链式表示和实现(C语言)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 久久99精品国产麻豆91樱花 | 国产99视频在线 | 高h全肉污文play带道具 | 亚洲一区二区三区在线看 | 成人91免费视频 | 亚洲美女性生活视频 | 在线观看日韩av电影 | 成人av网站在线 | 中文字幕在线视频播放 | 99久久久无码国产精品不卡 | 天天射天天拍 | 草草影院最新 | 日韩69视频 | 色女孩综合| 国精产品一区二区 | 日韩午夜毛片 | 国产成人无码精品久久久久 | 国产精品免费av一区二区 | 国产视频污在线观看 | 日精品| 九九精品在线观看 | 久久久久久美女 | 超碰2020| 五月婷婷丁香 | 在线va| 鸥美毛片| 欧美三区四区 | 狠狠撸视频| 国产成人精品av久久 | 国产成人欧美一区二区三区的 | 国产精品xxx在线观看www | 性中国古装videossex | 色噜噜狠狠一区二区三区牛牛影视 | 熟女俱乐部一区二区 | 韩国电影一区二区三区 | av在线观看地址 | 一区二区三区四区免费观看 | 久久久国产精品人人片 | 萌白酱在线观看 | 97在线精品 | 国产av电影一区二区三区 | 成人乱人乱一区二区三区一级视频 | 黄色小视频免费看 | 亚洲人人精品 | 粉嫩久久99精品久久久久久夜 | 91精品视频免费 | 香蕉视频网站入口 | 九色91av | 婷婷狠狠爱 | 亚洲日本成人在线观看 | 亚洲成人乱码 | 久久久久久久亚洲av无码 | 深夜激情网站 | www.桃色av嫩草.com | 91色片| 爱爱视频一区二区 | 日韩精品在线免费 | 日本zzjj| 国产午夜福利片 | 五月婷婷中文字幕 | av中字在线 | 国产乱淫av片免费 | 天堂在线资源网 | 亚洲无码久久久久久久 | 中文字幕另类 | 光棍天堂av | 欧美久久精品 | 亚洲成人黄色片 | 国产一卡二卡三卡 | 偷自在线 | 免费的毛片网站 | 久久久全国免费视频 | 高潮一区 | av在线片| av体验区| 亚洲v国产v欧美v久久久久久 | 国产亚洲一区二区在线 | 91在线观看喷潮 | 韩国一级淫一片免费放 | 亚洲福利精品视频 | 国产一区二区黄色 | 中文字幕乱码无码人妻系列蜜桃 | 黄色性视频| 久久99操 | 中文字幕人妻一区二区三区 | 美女黄色大片 | 亚洲a一区| 91精品国产一区二区三竹菊影视 | 成长快手短视频在线观看 | 成人av在线资源 | 天天草天天干 | 美女张开腿让男人桶爽 | 激情综合啪啪 | 玖草在线视频 | 国产精品久久久久久久 | 日韩福利影院 | 超碰人人人 | 婷婷精品一区二区三区 | 麻豆网站入口 |