資料結構鏈佇列實現

2021-09-25 14:52:08 字數 1472 閱讀 2292

如題;這是一套完整的可執行的**;需要讀者有一定的基礎去閱讀;

語言是用c語言實現;在c++環境中編寫;在c++中可直接執行;在c語言中需要改部分標頭檔案和輸出語句;

標頭檔案;這要是**的宣告部分;

# ifndef _head_

# define _head_

# include using namespace std;

typedef int datatype;

typedef struct node

snode, * psnode;

typedef struct

linkstack, * plinkstack;

plinkstack createlinkstack(void);

void destroylinkstack(plinkstack * ps);

bool emptylinkstack(plinkstack s);

bool pushlinkstack(plinkstack s, datatype x);

bool poplinkstack(plinkstack s, datatype * val);

bool gettoplinkstack(plinkstack s, datatype * val);

# endif

實現檔案;主要是**的實現;

# include "head.h"

plinkstack createlinkstack(void)

else }

void destroylinkstack(plinkstack * ps)

free(s);

s = null;

*ps = null;

return;

}bool emptylinkstack(plinkstack s)

else }

bool pushlinkstack(plinkstack s, datatype x)

else }

bool poplinkstack(plinkstack s, datatype * val)

else }

bool gettoplinkstack(plinkstack s, datatype * val)

else

}

main函式;

# include "head.h"

int main(int argc, char ** ar**)

for (int i = 0; i < 10; i++)

cout << endl;

cout << emptylinkstack(s) << endl;

destroylinkstack(&s);

if (null == s)

system("pause");

return 0;

}

資料結構(C實現) 鏈佇列

鏈佇列,即佇列的鏈式儲存結構,它是僅在表頭刪除和表尾插入的單鏈表,因此乙個鏈佇列需要設定兩個分別指示隊頭元素和隊尾元素的指標,為了操作方便,給鏈佇列新增乙個頭結點,並令隊頭指標指向頭結點,由此,空的鏈佇列的判斷條件就是隊頭指標和隊尾指標均指向頭結點。鏈佇列型別描述 typedef int qelem...

鏈佇列資料結構的實現

typedef struct node linkqueuenode typedef struct linkqueue 鏈佇列初始化 空的鏈佇列的隊頭指標和隊尾指標均指向頭結點 int initqueue linkqueue q else return 1 入隊操作演算法 利用隊尾尾插法 int en...

資料結構 鏈佇列

佇列沒完全看懂 include include define datatype int 定義節點結構 typedef struct nodequeuenode 定義頭節點 typedef structlinkqueue 初始化鏈佇列,頭節點置空 void initqueue linkqueue q ...