久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

Hi,歡迎來到嵌入式培訓高端品牌 - 華清遠見教育科技集團<北京總部官網>,專注嵌入式工程師培養15年!
當前位置: > 華清遠見教育科技集團 > 嵌入式學習 > 講師博文 > 關于鏈式隊列是否需要頭結點
關于鏈式隊列是否需要頭結點
時間(jian):2017-01-04作者:華清(qing)遠見(jian)

隊列是(shi)一種特殊的線性表,它只允許在表頭進(jin)行刪除操作(zuo),而(er)在表尾進(jin)行插(cha)入操作(zuo),是(shi)一種先進(jin)先出的數(shu)據(ju)結構(gou)。

隊(dui)列(lie)可(ke)以采用數(shu)組存儲(chu),也可(ke)以采用鏈式(shi)存儲(chu)。關于鏈式(shi)存儲(chu)常見的又有兩種:帶頭(tou)(tou)結點(dian)和不帶頭(tou)(tou)結點(dian)。我們建議采用帶頭(tou)(tou)結點(dian)的實現方式(shi),因為,這樣可(ke)以大大簡化對(dui)隊(dui)列(lie)的處(chu)理。

下面以(yi)入隊操作為例,對(dui)本文觀點進(jin)行了(le)進(jin)一步(bu)的闡述。假設基(ji)本結構的定義為:

typedef int datatype;
        typedef struct node
        {
                datatype data;
                struct node* next;
        }listnode, *linknode;
        typedef struct
        {
                linknode front;
                linknode rear;
      ;  }linkqueue;

帶頭結點的鏈隊入隊實(shi)現:

 void enqueue(linkqueue* q, datatype x){
                linknode p = (linknode)malloc(sizeof(listnode));
                p->data = x;
                p->next = NULL;
                q->rear->next = p;
                q->rear = p;
       &nbsp;}

不帶頭結(jie)點的鏈隊(dui)入隊(dui)實現:

void enqueue(linkqueue* q, datatype x){
                linknode p = (linknode)malloc(sizeof(listnode));
                p->data = x;
                p->next = NULL;
                if(q->front == NULL){
                        q->front = p;
                        q->rear = p;
                        return;
                }
                q->rear->next = p;
                q->rear = p;
  &nbsp;     }

比較上(shang)面兩段程序,帶(dai)頭結(jie)(jie)點(dian)(dian)的(de)鏈(lian)(lian)隊(dui)的(de)入隊(dui)操(cao)作(zuo),只要(yao)把新生成的(de)結(jie)(jie)點(dian)(dian)加到(dao)尾結(jie)(jie)點(dian)(dian)后(hou)(hou)即可。而不(bu)帶(dai)頭結(jie)(jie)點(dian)(dian)的(de)操(cao)作(zuo)則(ze)還要(yao)注(zhu)(zhu)意到(dao)邊(bian)界(jie)操(cao)作(zuo),假如是第一次入隊(dui),需(xu)修改(gai)隊(dui)頭指針。同樣的(de)道理,對于出(chu)(chu)隊(dui)操(cao)作(zuo),假如是后(hou)(hou)一個結(jie)(jie)點(dian)(dian)出(chu)(chu)隊(dui),需(xu)要(yao)注(zhu)(zhu)意修改(gai)隊(dui)尾指針。由(you)此,我們建議鏈(lian)(lian)式(shi)隊(dui)列好采用(yong)帶(dai)頭結(jie)(jie)點(dian)(dian)的(de)實現方式(shi)。

發表評論
評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)