#include
using
namespace std;
typedef
struct lnodelinknode;
void
fun1
(linknode *
&l);
//建立單鏈表
void
fun2
(linknode *
&l,char a,
int n)
;//使用尾插法插入元素
void
fun3
(linknode *l)
;//輸出單鏈表
intfun4
(linknode *l)
;//輸出單鏈表的長度
bool
fun5
(linknode *l)
;//判斷單鏈表是否為空
char
fun6
(linknode *l,
int i)
;//輸出單鏈表的第i個元素
intfun7
(linknode *l,
char c)
;//查詢單鏈表元素c的位置
void
fun8
(linknode *l,
int i,
char c)
;//在第i個位置插入元素c
void
fun9
(linknode *
&l,int i)
;//刪除單鏈表第i個元素
void
fun10
(linknode *
&l);
//釋放單鏈表
void
main()
;fun2
(h,a,5)
;fun3
(h);
cout<<
"該單鏈表的長度為"
<<
fun4
(h)
(h))
cout<<
"該單鏈表為空"
cout<<
"該單鏈表不為空"
"第三個元素為"
<<
fun6
(h,3
)
"元素a的位置為"
<<
fun7
(h,'a'
)
(h,4
,'f');
fun9
(h,3);
fun3
(h);
fun10
(h);
}//建立單鏈表
void
fun1
(linknode *
&l)//使用尾插法插入元素
void
fun2
(linknode *
&l,char a,
int n)
r->next=
null
; cout<<
"已成功使用尾插法插入元素"
<}//輸出單鏈表
void
fun3
(linknode *l)
cout<<
"已成功輸出單鏈表"
<}//輸出單鏈表的長度
intfun4
(linknode *l)
return n;
}//判斷單鏈表是否為空
bool
fun5
(linknode *l)
//輸出單鏈表的第i個元素
char
fun6
(linknode *l,
int i)
if(i==j&&p!=
null
)return p-
>data;
if(p=
null
) cout<<
"沒有第"
<"個元素"
/查詢單鏈表元素c的位置
intfun7
(linknode *l,
char c)
if(p==
null
) cout<<
"沒有元素"
return j;
}//在第i個位置插入元素c
void
fun8
(linknode *l,
int i,
char c)
if(p==
null
) cout<<
"位置錯誤,無法插入"
//刪除單鏈表第i個元素
void
fun9
(linknode *
&l,int i)
if(p==
null
) cout<<
"沒有第"
<"個元素 無法刪除"
}//釋放單鏈表
void
fun10
(linknode *
&l)free
(q);
cout<<
"已釋放單鏈表"
<}
資料結構實驗二 單鏈表的基本操作
程式設計實現單鏈表的基本操作 建立單鏈表,查詢單鏈表,插入單鏈表,刪除單鏈表 採用單鏈表結構程式設計實現 兩個有序單鏈表的歸併運算。掌握線性表的鏈式儲存結構 掌握單鏈表及其基本操作的實現。本實驗專案可以支撐 目標1.理解資料結構的基本概念 計算機內部資料物件的表示和特性。掌握線性表 樹 圖等資料邏輯...
資料結構 單鏈表基本操作
實現單鏈表的初始化,頭插法建表,尾插法建表,查詢元素,插入元素,刪除元素等功能 include using namespace std define elemtype char typedef struct node node,linklist 初始化單鏈表 void initlist linkli...
資料結構實驗3 單鏈表的基本操作實現
寫的如果有不太好的地方,歡迎大佬指點!實驗3 單鍊錶的基本操作實現 1 實驗目的 通過該實驗,深入理解鍊錶的邏輯結構 物理結構等概念,掌握鍊錶基本操作的程式設計實現,熟練掌握c語言中指標的操作。和實驗3對比,掌握線性結構兩種不同儲存方式的區別。2 實驗內容 程式設計實現鍊錶下教材第二章定義的線性表的...