/*
*檔名稱:建立雙鏈表演算法庫.cpp
*作 者:孟琪琪
*完成日期:2023年 9月 23日
*並建設自己的專業基礎設施演算法庫
* 輸入描述:無
* 輸出描述:輸出插入資料後的逆序
*/
標頭檔案dlinklist.h
#ifndef dlinklist_h_included
#define dlinklist_h_included
typedef int elemtype;
typedef struct dnode //定義雙鏈表結點型別
dlinklist;
void createlistf(dlinklist *&l,elemtype a,int n);//頭插法建雙鏈表
void createlistr(dlinklist *&l,elemtype a,int n);//尾插法建雙鏈表
void initlist(dlinklist *&l); //初始化雙鏈表
void destroylist(dlinklist *&l); //銷毀雙鏈表
bool listempty(dlinklist *l); //判斷鍊錶是否為空
int listlength(dlinklist *l); //求鍊錶的長度
void displist(dlinklist *l); //輸出鍊錶
bool getelem(dlinklist *l,int i,elemtype &e); //獲取節點的值
int locateelem(dlinklist *l,elemtype e); //查詢乙個節點
bool listinsert(dlinklist *&l,int i,elemtype e) ;//插入乙個節點
bool listdelete(dlinklist *&l,int i,elemtype &e); //刪除乙個節點
原始檔:linklist.cpp
#include #include #include "dlinklist.h"
void createlistf(dlinklist *&l,elemtype a,int n)
//頭插法建雙鏈表
}void createlistr(dlinklist *&l,elemtype a,int n)
//尾插法建雙鏈表
r->next=null; //終端結點next域置為null
}void initlist(dlinklist *&l)
void destroylist(dlinklist *&l)
free(p);
}bool listempty(dlinklist *l)
int listlength(dlinklist *l)
return(i);
}void displist(dlinklist *l)
printf("\n");
}bool getelem(dlinklist *l,int i,elemtype &e)
if (p==null)
return false;
else
}int locateelem(dlinklist *l,elemtype e)
if (p==null)
return(0);
else
return(n);
}bool listinsert(dlinklist *&l,int i,elemtype e)
if (p==null) //未找到第i-1個結點
return false;
else //找到第i-1個結點*p
}bool listdelete(dlinklist *&l,int i,elemtype &e)
if (p==null) //未找到第i-1個結點
return false;
else //找到第i-1個結點*p
}
測試函式main.cpp
知識點總結:建立自己的專業基礎演算法庫。
第4周專案4 建立雙鏈表演算法庫
問題及 檔名稱 作 者 路亞麗 完成日期 2016年 9月 22日 版 本 號 v1.0 問題描述 採用程式的多檔案組織形式建立雙鏈表演算法庫 輸入描述 無 程式輸出 dlinklist.h ifndef dlinklist h included define dlinklist h include...
第4周專案4 建設雙鏈表演算法庫
檔名稱 專案1.cpp 作 者 王婧 完成日期 2016年9月20日 版 本 號 v1.0 問題描述 演算法庫包括兩個檔案 標頭檔案 dlinklist.h,包含定義順序表資料結構的 巨集定義 要實現演算法的函式的宣告 原始檔 dlinklist.cpp,包含實現各種演算法的函式的定義 請採用程式的...
第4周 專案2 建立「單鏈表」演算法庫
問題描述及 煙台大學計控學院 作 者 楊徵 完成日期 2015年9月21日 問題描述 演算法庫包括兩個檔案 標頭檔案 linklist.h,包含定義順序表資料結構的 巨集定義 要實現演算法的函式的宣告 原始檔 linklist.cpp,包含實現各種演算法的函式的定義 請採用程式的多檔案組織形式,建立...