色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区

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

隊列是一種特殊的線性表,它只允許在表頭進行刪除操作,而在表尾進行插入操作,是一種先進先出的數據結構。

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

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

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

帶頭結點的鏈隊入隊實現:

 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;
        }

不帶頭結點的鏈隊入隊實現:

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;
        }

比較上面兩段程序,帶頭結點的鏈隊的入隊操作,只要把新生成的結點加到尾結點后即可。而不帶頭結點的操作則還要注意到邊界操作,假如是第一次入隊,需修改隊頭指針。同樣的道理,對于出隊操作,假如是后一個結點出隊,需要注意修改隊尾指針。由此,我們建議鏈式隊列好采用帶頭結點的實現方式。

發表評論
評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)
色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区
主站蜘蛛池模板: 久久久亚洲天堂| 91人成网站www| 欧美激情视频网| 久久久亚洲影院你懂的| 国内久久久精品| 青青久久av北条麻妃海外网| 日韩免费av片在线观看| 国产拍精品一二三| 日韩高清av一区二区三区| 中文字幕精品—区二区| 久久99国产综合精品女同| 久久久天堂国产精品女人| 日本一区二区不卡| 亚洲国产精品小视频| 一个人www欧美| 欧美国产极速在线| 国产精品久久久久久久一区探花| 亚洲国产精品99久久| 色伦专区97中文字幕| 欧美福利视频在线| 国产精品视频一区二区高潮| 日韩精品高清视频| 欧美日韩国产色视频| 国产成人aa精品一区在线播放| 亚洲精品二三区| 欧美日韩xxxxx| 国产精品一区二区三区毛片淫片| 亚洲欧美成人精品| 狠狠色狠狠色综合日日五| 国产精品久久久久久亚洲影视 | 欧美在线观看视频| 成人国产在线视频| 久久精品久久久久电影| 欧美一区视频在线| 夜夜狂射影院欧美极品| 91产国在线观看动作片喷水| 亚洲专区国产精品| 欧美疯狂xxxx大交乱88av| 91精品啪aⅴ在线观看国产| 久久国产精品久久精品| 国产一区在线播放|