亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

C語言數據結構鏈表隊列的實現

2020-01-26 14:02:31
字體:
來源:轉載
供稿:網友

C語言數據結構鏈表隊列的實現

1.寫在前面

  隊列是一種和棧相反的,遵循先進先出原則的線性表。

  本代碼是嚴蔚敏教授的數據結構書上面的偽代碼的C語言實現代碼。

  分解代碼沒有包含在內的代碼如下:

#include <stdio.h>#include <stdlib.h>#define OK 1#define ERROR 0typedef int QElemtype;typedef int status;

2.代碼分解

2.1對隊列和節點的結構定義

typedef struct QNode //對節點的結構定義{  QElemtype data;  struct QNode *next;}QNode,*QueuePtr;typedef struct{   //對隊列的結構定義  QueuePtr head;  QueuePtr rear;}LinkQueue;

  |說明:

    1.隊列的節點首先要保存元素,其次要指引下一個元素的位置,這是實現線性存儲的基礎也是關鍵。

    2.隊列中定義了兩個節點指針,第一個 head 用來表示 隊頭,允許移除元素。與之相反的是 rear  用來表示 隊尾,允許插入元素。

    3.為什么這么定義?

2.2 初始化和回收隊列

status initQueue(LinkQueue* que) //初始化隊列{  que->head=que->rear=(QueuePtr)malloc(sizeof(QNode));  if(!que->head) //這段代碼對隊列里面的用戶自定義數據類型進行了初始化    return ERROR;  return OK;}status destoryQueue(LinkQueue* que) //回收隊列{  while(que->head)  {    que->rear = que->head->next;    free(que->head);    que->head=que->rear;  }  return OK;}

  |說明:

    1.初始化很簡單,就是為隊列內的兩個重要節點分配空間。

    2.隊列的回收,思路很巧妙

 循環條件是  隊列的隊頭節點 head 存在    {      此處rear起到臨時變量的作用,不斷指向head->next的同時,釋放head。這樣處理可以干凈的把包含頭節點在內的隊列清理干凈。      }

2.3 添加和刪除元素

status enQueue(LinkQueue* que,QElemtype e){  QueuePtr p = (QueuePtr)malloc(sizeof(QNode));  if(!p) //若未能申請到空間,便退出    return ERROR;  p->data=e;  p->next=NULL;  que->rear->next = p;  que->rear=p;  return OK;}status delQueue(LinkQueue* que,QElemtype *t){  if(que->rear==que->head)    return ERROR; //隊列為空  QueuePtr p = que->head->next;  *t=p->data;  que->head->next=p->next;  if(que->rear==p) //這個判斷是 確保在清空隊列的時候,讓rear指針歸位。    que->rear=que->head;  free(p);  return OK;}

  |說明:

    1.添加元素的思路:新建一個節點,并給其賦值(data,next)。讓隊列的尾部相接此節點,同時更新尾部節點。

    2.刪除元素的思路:首先判斷節點是否為空?然后用臨時節點從隊頭獲取到第一個節點,即head->next,(我們的head節點并不保存元素),獲取其地址后,更新隊頭節點所指的第一個節點獲取值后釋放該地址空間。

2.4 遍歷隊列和測試方法

status viewQueue(LinkQueue* que){  if(que->rear == que->head)    return ERROR;    QueuePtr p =que->head->next;  while(p)  {    printf("val:%d",p->data);    p=p->next;  }  return OK;}int main(int argc, char **argv){  LinkQueue myQueue;  initQueue(&myQueue);  for(int i=1;i<=5;i++)    enQueue(&myQueue,i);  viewQueue(&myQueue);    QElemtype a;  for(int i=0;i<5;i++)  {    delQueue(&myQueue,&a);    printf("%d/n",a);  }  destoryQueue(&myQueue);  printf("fuck !");    return 0;}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩在线中文字| www高清在线视频日韩欧美| 国产丝袜高跟一区| 国产精品av电影| 亚洲国产精品99| 国产精品99一区| 欧美性黄网官网| 国产精品69精品一区二区三区| 亚洲欧洲在线观看| 久久色精品视频| 成人免费观看网址| 国产一区私人高清影院| 亚洲成人网在线| 国产成人精品在线观看| 欧美激情aaaa| 97视频人免费观看| 国产不卡在线观看| 久久综合久久八八| 国内免费精品永久在线视频| 欧美日韩免费看| 久久精品久久久久| 欧美成人黑人xx视频免费观看| 国产香蕉一区二区三区在线视频| 欧美激情一区二区三区久久久| 亚洲第五色综合网| 精品国产网站地址| 一区二区三区 在线观看视| 日韩亚洲欧美中文高清在线| 欧美性黄网官网| 国产精欧美一区二区三区| 久久国产加勒比精品无码| 国产欧美日韩中文字幕| 亚洲成人av片在线观看| 欧美国产第二页| 超碰精品一区二区三区乱码| 亚洲成人av在线播放| 欧美成人三级视频网站| 91久久国产精品91久久性色| 一区二区成人精品| 欧美自拍视频在线| 久久久久免费精品国产| 国产精品美乳一区二区免费| 中文日韩电影网站| 亚洲在线免费视频| 精品亚洲一区二区三区在线观看| 国产精品老牛影院在线观看| 黑人巨大精品欧美一区二区一视频| 亚洲free性xxxx护士白浆| 成人免费福利在线| 中文字幕精品网| 在线观看91久久久久久| 成人a免费视频| 久久久99久久精品女同性| 国内精久久久久久久久久人| 亚洲欧美另类人妖| 亚洲精品成人av| 欧美野外猛男的大粗鳮| 国产精品视频最多的网站| 一区二区亚洲欧洲国产日韩| 热久久美女精品天天吊色| 国产午夜精品全部视频播放| 3344国产精品免费看| 久久精品这里热有精品| 亚洲午夜av久久乱码| 国产在线视频2019最新视频| 欧美日韩午夜视频在线观看| 国产精品热视频| 欧美一区二区视频97| 亚洲欧美激情精品一区二区| 亚洲国产福利在线| 91视频-88av| 国产a∨精品一区二区三区不卡| 成人欧美在线视频| 日韩欧美在线播放| 国产精品av网站| 国产98色在线| 91爱爱小视频k| 日韩在线小视频| 亚洲天堂影视av| 国产成人激情视频| 亚洲图片欧洲图片av| 正在播放欧美视频| 日韩精品中文字幕视频在线| 欧美午夜激情视频| 超碰日本道色综合久久综合| 欧美在线一级va免费观看| 亚洲精品国产品国语在线| 青青久久av北条麻妃黑人| 中文字幕亚洲无线码a| 色综合伊人色综合网站| 中文字幕日韩欧美在线视频| 国产精品a久久久久久| 国产精品久久77777| 国产精品自拍网| 亚洲国产精品va在看黑人| 国产成人精品电影| 亚洲在线第一页| 欧美在线视频免费观看| 日韩在线观看免费全集电视剧网站| 国产精品一区二区久久久| 欧美大成色www永久网站婷| 日本91av在线播放| 久久久精品亚洲| 成人久久一区二区三区| 久久久天堂国产精品女人| 青青青国产精品一区二区| 亚洲一区二区国产| 国产精品678| 亚洲精品欧美极品| 国产精品青青在线观看爽香蕉| 日韩精品丝袜在线| 啪一啪鲁一鲁2019在线视频| 精品视频在线播放色网色视频| 久久久久国产精品www| 国产精品www色诱视频| 亚洲精品一区二区三区不| 亚洲午夜激情免费视频| 日韩精品在线视频观看| 日韩美女主播视频| 欧美午夜xxx| 一区二区三区四区精品| 日韩精品中文字幕有码专区| 欧美日韩国产综合视频在线观看中文| 韩剧1988在线观看免费完整版| 欧美日韩亚洲国产一区| 亚洲国产日韩欧美在线99| 亚洲电影免费观看高清完整版| 亚洲一区二区在线播放| 久久视频国产精品免费视频在线| 91社影院在线观看| 欧美成人一区二区三区电影| 日韩av在线不卡| 懂色av一区二区三区| 色偷偷91综合久久噜噜| 97香蕉久久超级碰碰高清版| 成人有码在线播放| 精品网站999www| 国产精品久久久久久久久久免费| 久久亚洲影音av资源网| 久久成人精品视频| 亚洲小视频在线| 日韩有码在线视频| 欧美大全免费观看电视剧大泉洋| 亚洲欧美日韩第一区| 亚洲国产高清高潮精品美女| 人妖精品videosex性欧美| 57pao国产精品一区| 一区二区日韩精品| 亚洲跨种族黑人xxx| 国产精品视频自拍| 亚洲偷欧美偷国内偷| 亚洲深夜福利网站| 国产精品欧美激情在线播放| 欧美亚洲在线视频| 国产精品偷伦视频免费观看国产| 国产精品扒开腿爽爽爽视频| 97超级碰碰碰久久久| 欧美大尺度在线观看| 欧美视频二区36p| 久久偷看各类女兵18女厕嘘嘘| 亚洲成年人在线播放| 日韩专区在线观看| 亚洲аv电影天堂网| 日韩中文字幕第一页|