資料結構 鏈隊(C C 版)

2021-08-18 09:28:17 字數 816 閱讀 5999

本文為csdn博主coder_gxd原創

#include //函式malloc(),free()所在標頭檔案     

//本文鏈隊為不含頭結點的鏈隊

//定義鏈隊結點

typedef struct qnode qnode;

//定義鏈隊型別

typedef struct liqueue;

//初始化鏈隊,時間複雜度為o(1);

//建立鏈隊,並且隊頭隊尾指標均指向null;

void initqueue (liqueue *&lqu)

//判斷隊空,時間複雜度為o(1);

//隊空返回1,否則返回2;

int isqueueempty(liqueue *lqu)

else

}//入隊演算法,時間複雜度為o(1);

//建立新結點p,若原鏈隊空,則隊頭和隊尾均指向p;若原煉表不為空,將p結點鏈在隊尾後,隊尾指標指向p;

void enqueue(liqueue *lqu,int x)

else

}//出隊演算法,時間複雜度為o(1);

//將鏈隊lqu的隊首元素出隊,若隊空失敗,則返回0;若成功,則返回1;

int dequeue(liqueue *lqu,int &x)

else

if(lqu->front==lqu->rear)

else

x=p->data;//將出隊結點資料元素賦值給 x ;

free(p);//釋放 p 結點;

return 1;

}

資料結構 鏈棧(C C 版)

本文為csdn博主coder gxd原創 本文介紹資料結構中單鏈表的常用演算法 c c 版 歡迎各位同學討論指正。include 函式malloc free 所在標頭檔案 本文鏈棧為含有頭結點的鏈棧 定義鏈棧結點 typedef struct lnode lnode 鏈棧初始化 時間複雜度為o 1 ...

資料結構知識整理 鏈隊

初始化 入隊 出隊 取隊頭元素 棧和佇列是兩種重要的線性結構,與一般線性表不同,它們是操作受限的特殊線性表,主要用於輔助其他資料結構的操作和處理,基本不用於儲存資料元素資訊。佇列 queue 是一種先進先出 first in first out,fifo 的線性表。它只允許在表的一端插入,而在表的另...

資料結構實驗三 鏈隊

include include stdio.h include stdlib.h using namespace std define ok 1 define error 0 define overflow 2 typedef int status typedef int qelemtype 因為要...