程式設計實現單鏈表的基本操作:建立單鏈表,查詢單鏈表,插入單鏈表,刪除單鏈表;
採用單鏈表結構程式設計實現:兩個有序單鏈表的歸併運算。
掌握線性表的鏈式儲存結構;
掌握單鏈表及其基本操作的實現。
本實驗專案可以支撐「目標1. 理解資料結構的基本概念、計算機內部資料物件的表示和特性。掌握線性表、樹、圖等資料邏輯結構、儲存結構及其差異以及各種操作的實現。
本實驗通過驗證方式引導學生深入理解單鏈表的邏輯結構、物理結構等概念,掌握單鏈表的基本操作,為後續學習打下基礎,以便更好地達成後續更高層次的課程目標。
/*
*title:單鏈表的基本操作
*writer:weiyuexin
*data:2020-10-1
*/#include
using
namespace std;
#define elemtype int
typedef
struct lnodelnode ,
*linklist;
void
createlist
(linklist &l)
}void
display
(linklist &l)
cout<}void
findelem
(linklist &l,
int i)
p1 = p1-
>next;}if
(sign)
p2 = p2-
>next;
n++;}
cout<<
"個元素"
<}else
}void
getelem
(linklist l,
int i)if(
!p || j>i)
cout<<
"該單鏈表第"
<"個元素為 "
<>data<}void
insert
(linklist &l,
int j,elemtype e)
if(j>length)
while
(p && ilnode *s =
newlnode()
;//生成新節點
s->data = e;
//將資料域置為e
s->next = p-
>next;
p->next = s;
cout<<
"插入成功!"
<}void
delete
(linklist &l,
int x)if(
!p->next || i>x-1)
lnode *r =
newlnode()
; r = p-
>next;
p->next = r-
>next;
delete r;
cout<<
"刪除成功!"
<}void
deleteelem
(linklist &l,elemtype e)
p = p-
>next;}if
(sign)
else
}void
merger()
else
} pc-
>next = pa?pa:pb;
//將非空表的剩餘片段插入到pc之後
delete lb;
//釋放lb的頭結點
cout<<
"這兩個單鏈表歸併完畢!"
(lc);}
intmain()
}return0;
}
資料結構 實驗一 單鏈表的基本操作
include using namespace std typedef struct lnodelinknode void fun1 linknode l 建立單鏈表 void fun2 linknode l,char a,int n 使用尾插法插入元素 void fun3 linknode l 輸...
資料結構實驗二 單鏈表的基本實現
資料結構實驗 實驗二 單鏈表 2學時 1.設計實驗 設計演算法,實現線性結構上的單鏈表的產生以及元素的查詢 插入與刪除。1 4題必做,5 8題選做 具體實現要求 1 用正位序的方法,建立乙個由13個整數構成的帶頭結點的單鏈表。建議13個整數由鍵盤輸入。2 從鍵盤輸入1個整數,在單鏈表中查詢該結點的位...
資料結構 單鏈表基本操作
實現單鏈表的初始化,頭插法建表,尾插法建表,查詢元素,插入元素,刪除元素等功能 include using namespace std define elemtype char typedef struct node node,linklist 初始化單鏈表 void initlist linkli...