第九周專案4 廣義表演算法庫及應用(1)

2021-07-24 03:07:07 字數 1733 閱讀 9917

/*  

* 檔名稱 :1.cpp  

* 作    者 :孟令群  

* 完成日期 :2023年 10月27日  

* 版 本 號 :v1.0  

* 問題描述 :建立廣義表演算法庫

* 輸入描述 :

* 輸出描述 :

//1.頭文glist.h,定義資料型別,宣告函式; 

typedef char elemtype;

typedef struct lnode

val;

struct lnode *link; //指向下乙個元素

} glnode; //廣義表節點型別定義

int gllength(glnode *g); //求廣義表g的長度

int gldepth(glnode *g); //求廣義表g的深度

glnode *creategl(char *&s); //返回由括號表示法表示s的廣義表鏈式儲存結構

void dispgl(glnode *g); //輸出廣義表g

//2.原始檔glist.cpp,實現廣義表的基本運算,主要演算法包括:

#include #include #include "glist.h"

int gllength(glnode *g) //求廣義表g的長度

return n;

}

int gldepth(glnode *g) //求廣義表g的深度

g1=g1->link; //使g1指向下乙個元素

} return(max+1); //返回表的深度

}

glnode *creategl(char *&s) //返回由括號表示法表示s的廣義表鏈式儲存結構

else if (ch==')')

g=null; //遇到')'字元,g置為空

else if (ch=='#') //遇到'#'字元,表示為空表

g=null;

else //為原子字元

} else //串結束,g置為空

g=null;

ch=*s++; //取下乙個字元

if (g!=null) //串未結束,繼續構造兄弟節點

return g; //返回廣義表g

}

void dispgl(glnode *g) //輸出廣義表g

if (g->link!=null)

} }

#include #include "glist.h"

int main()

執行結果:

第九周專案4 廣義表演算法庫及應用

檔名稱 第9周專案4 廣義表演算法庫 4.1 cpp 作 者 高露 完成日期 2015年11月6日 版 本 號 v1.0 問題描述 1 建立廣義表演算法庫,包括 頭文glist.h,定義資料型別,宣告函式 原始檔glist.cpp,實現廣義表的基本運算,主要演算法包括 int gllength gl...

第九周專案4 廣義表演算法庫及應用

檔名稱 專案4 1.cbp 作 者 張晗 完成日期 2015年11月6日 版 本 號 v1.0 問題描述 1 建立廣義表演算法庫,包括 頭文glist.h,定義資料型別,宣告函式 原始檔glist.cpp,實現廣義表的基本運算,主要演算法包括 int gllength glnode g 求廣義表g的...

第九周專案4 廣義表演算法庫及應用

檔名稱 廣義表演算法庫 1 cpp 作 者 張雯婧 完成日期 2016年10月24日 版 本 號 v1.0 問題描述 1 建立廣義表演算法庫,包括 頭文glist.h,定義資料型別,宣告函式 原始檔glist.cpp,實現廣義表的基本運算,主要演算法包括 int gllength glnode g ...