在线观看国产免费视频_亚洲视频三区_中文字幕在线观看网站_日韩视频免费在线观看_亚洲视频精品_天天夜夜操

當前位置:網站首頁 >> 作文 >> 最新算法與數據結構實驗報告(5篇)

最新算法與數據結構實驗報告(5篇)

格式:DOC 上傳日期:2023-03-28 14:22:48
最新算法與數據結構實驗報告(5篇)
時間:2023-03-28 14:22:48     小編:zdfb

在當下社會,接觸并使用報告的人越來越多,不同的報告內容同樣也是不同的。那么,報告到底怎么寫才合適呢?下面是小編為大家帶來的報告優秀范文,希望大家可以喜歡。

算法與數據結構實驗報告篇一

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

算法與數據結構 專業班級: 14計單(2)

1413201007 學生姓名: 毛卓

計算機工程學院 指導教師: 章海鷗 16 ——20 17 學年 第 二 學期

金陵科技學院教務處制

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,要遵照以下字體、字號、間距等的具體要求。紙張一律采用a4的紙張。

實驗報告書寫說明

實驗報告中一至四項內容為必填項,包括實驗目的和要求;實驗儀器和設備;實驗內容與過程;實驗結果與分析。各院部可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用百分制,具體評分標準由各院部自行制定。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

實驗項目名稱: 順序表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗1 順序表

一、實驗目的和要求

掌握順序表的定位、插入、刪除等操作。

二、實驗儀器和設備

vc6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個順序表,并逐個輸出順序表中所有數據元素的值。編寫主函數測試結果。

(2)編寫順序表定位操作子函數,在順序表中查找是否存在數據元素x。如果存在,返回順序表中和x值相等的第1個數據元素的序號(序號從0開始編號);如果不存在,返回-1。編寫主函數測試結果。(3)在遞增有序的順序表中插入一個新結點x,保持順序表的有序性。

解題思路:首先查找插入的位置,再移位,最后進行插入操作;從第一個元素開始找到第一個大于該新結點值x的元素位置i即為插入位置;然后將從表尾開始依次將元素后移一個位置直至元素i;最后將新結點x插入到i位置。

(4)刪除順序表中所有等于x的數據元素。

2、選做題

(5)已知兩個順序表a和b按元素值遞增有序排列,要求寫一算法實現將a和b歸并成一個按元素值遞減有序排列的順序表(允許表中含有值相同的元素)。

程序清單:

(1):/*編寫程序建立一個順序表,并逐個輸出順序表中所有數據元素的值。*/ #include

typedef int datatype;#define maxsize 1024 typedef struct { datatype data[maxsize];int last;

}sequenlist;void main(){ sequenlist l;int i,n;printf(“請輸入元素個數:”);scanf(“%d”,&n);printf(“n請輸入元素:”);for(i=0;i

如果不存在,返回-1。*/ #include

typedef int datatype;#define maxsize 1024 typedef struct { datatype data[maxsize];int last;}sequenlist;

int fun(sequenlist l,int x,int n){

} int i;for(i=0;i

} int i,n,y;int x;

printf(“請輸入元素個數:”);scanf(“%d”,&n);printf(“n請輸入元素:”);for(i=0;i

printf(“n請輸入要查找的數據元素:”);scanf(“%d”,&x);y=fun(l,x,n);if(y==-1)else printf(“n數據元素 %d 所在的位置為 %d n”,x,y);printf(“n所要查找的數據元素不存在。n”);(3): /*在遞增有序的順序表中插入一個新結點x,保持順序表的有序性。

解題思路:首先查找插入的位置,再移位,最后進行插入操作;

從第一個元素開始找到第一個大于該新結點值x的元素位置i即為插入位置;

然后將從表尾開始依次將元素后移一個位置直至元素i;最后將新結點x插入到i位置。*/ #define maxsize 100 typedef struct{

int data[maxsize];

int last;}sequenlist;main(){

int i,x,j;

sequenlist l={{1,3,5,6,7,9},5};

printf(“n插入元素前的數據為:”);

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

printf(“%2d”,[i]);

printf(“n請輸入要插入的元素:”);

scanf(“%d”,&x);

for(i=1;i<=;i++)

if([i-1]>x)break;

if(i>)

{

[ +1]=x;

}

else

{

for(j=;j>=i-1;j--)[j+1]=[j];[i-1]=x;

}

++;

printf(“插入元素后的數據為:n”);

for(j=0;j<=;j++)

printf(“%3d”,[j]);

printf(“n”);}(4): /*刪除順序表中所有等于x的數據元素。*/ #define maxsize 100 typedef struct{

int data[maxsize];

int last;}sequenlist;main(){

int i,j,x=0,k=0;

sequenlist l={{1,3,5,7,2,4,6,8,2,9},9};

printf(“n原數據為:”);

for(i=0;i<=;i++)printf(“%3d”,[i]);

printf(“n請輸入要刪除的數據:”);

scanf(“%d”,&x);

for(i=1;i<=+1;i++)

if([i-1]==x){

for(j=i;j<=+1;j++)[j-1]=[j];

--;

i--;

k=1;

}

if(k==1){

printf(“刪除后的數據為:n”);

for(j=0;j<=;j++)printf(“%3d”,[j]);

}

else printf(“not found!n”);

printf(“n”);}

四、實驗結果與分析(程序運行結果及其分析)(1)結果: 請輸入元素個數:5

請輸入元素:1 2 3 4 5

元素輸出:1 2 3 4 5(2)結果: 請輸入元素個數:5

請輸入元素:1 2 3 4 5

請輸入要查找的數據元素:5

數據元素5所在的位置為 4(3)結果:插入數據前的元素為:1 3 5 6 7 9

請輸入要插入的元素為:10

插入元素后的數據為:

5 6 7 9 10(4)結果:原數據為:1 3 5 7 2 4 6 8 2 9

請輸入要刪除的數據為:7

刪除后的數據為: 3 5 2 4 6 8 2 9

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 單鏈表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗2 單鏈表

一、實驗目的和要求

1、實驗目的

掌握單鏈表的定位、插入、刪除等操作。

2、實驗要求

(1)注意鏈表的空間是動態分配的,某結點不用之后要及時進行物理刪除,以便釋放其內存空間。

(2)鏈表不能實現直接定位,一定注意指針的保存,防止丟失。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個單鏈表,并逐個輸出單鏈表中所有數據元素。(2)在遞增有序的單鏈表中插入一個新結點x,保持單鏈表的有序性。

解題思路:首先查找插入的位置然后進行插入操作;從第一個結點開始找到第一個大于該新結點值的結點即為插入位置;然后在找到的此結點之前插入新結點;注意保留插入位置之前結點的指針才能完成插入操作。

(3)編寫實現帶頭結點單鏈表就地逆置的子函數,并編寫主函數測試結果。

2、選做題

已知指針la和lb分別指向兩個無頭結點單鏈表的首元結點。要求編一算法實現,從表la中刪除自第i個元素起共len個元素后,將它們插入到表lb中第j個元素之前。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 堆棧和隊列 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗3 堆棧和隊列

一、實驗目的和要求

(1)掌握應用棧解決問題的方法。(2)掌握利用棧進行表達式求和的算法。

(3)掌握隊列的存儲結構及基本操作實現,并能在相應的應用問題中正確選用它們。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)判斷一個算術表達式中開括號和閉括號是否配對。(2)測試“漢諾塔”問題。

(3)假設稱正讀和反讀都相同的字符序列為”回文”,試寫一個算法判別讀入的一個以’@’為結束符的字符序列是否是“回文”。

2、選做題

在順序存儲結構上實現輸出受限的雙端循環隊列的入列和出列算法。設每個元素表示一個待處理的作業,元素值表示作業的預計時間。入隊列采取簡化的短作業優先原則,若一個新提交的作業的預計執行時間小于隊頭和隊尾作業的平均時間,則插入在隊頭,否則插入在隊尾。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 串 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗4 串

一、實驗目的和要求

掌握串的存儲及應用。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫輸出字符串s中值等于字符ch的第一個字符的函數,并用主函數測試結果。

(2)編寫輸出字符串s中值等于字符ch的所有字符的函數,并用主函數測試結果。

解題思路:可以將第一題程序改進成一個子函數,在本題中循環調用。(3)設字符串采用單字符的鏈式存儲結構,編程刪除串s從位置i開始長度為k的子串。

2、選做題

假設以鏈結構表示串,編寫算法實現將串s插入到串t中某個字符之后,若串t中不存在這個字符,則將串s聯接在串t的末尾。

提示:為提高程序的通用性,插入位置字符應設計為從鍵盤輸入。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 二叉樹 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗5 二叉樹

一、實驗目的和要求

(1)掌握二叉樹的生成,以及前、中、后序遍歷算法。(2)掌握應用二叉樹遞歸遍歷思想解決問題的方法。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)建立一棵二叉樹。對此樹進行前序遍歷、中序遍歷及后序遍歷,輸出遍歷序列。

(2)在第一題基礎上,求二叉樹中葉結點的個數。(3)在第一題基礎上,求二叉樹中結點總數。(4)在第一題基礎上,求二叉樹的深度。

2、選做題

已知一棵完全二叉樹存于順序表sa中,[1…]存儲結點的值。試編寫算法由此順序存儲結構建立該二叉樹的二叉鏈表。

解題思路:根據完全二叉樹順序存儲的性質來確定二叉樹的父子關系即“還原”了二叉樹,之后再按照二叉樹二叉鏈表的構造方法進行建立。完全二叉樹順序存儲的一個重要性質為,第i個結點的左孩子是編號為2i的結點,第i個結點的右孩子是編號為2i+1的結點。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 圖 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗6 圖

一、實驗目的和要求

(1)熟練掌握圖的基本概念、構造及其存儲結構。

(2)熟練掌握對圖的深度優先搜索遍歷和廣度優先搜索遍歷的算法。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)構造一個無向圖(用鄰接矩陣表示存儲結構)。

(2)對上面所構造的無向圖,進行深度優先遍歷和廣度優先遍歷,輸出遍歷序列。

2、選做題

采用鄰接表存儲結構,編寫一個判別無向圖中任意給定的兩個頂點之間是否存在一條長度為k的簡單路徑的算法。簡單路徑是指其頂點序列中不含有重復頂點的路徑。提示:兩個頂點及k值均作為參數給出。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 排序 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗7 排序

一、實驗目的和要求

(1)熟練掌握希爾排序、堆排序、直接插入排序、起泡排序、快速排序、直接選擇排序、歸并排序和基數排序的基本概念。

(2)掌握以上各種排序的算法。區分以上不同排序的優、缺點。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

用隨機數產生100000個待排序數據元素的關鍵字值。測試下列各排序函數的機器實際執行時間(至少測試兩個):直接插入排序、希爾排序(增量為4,2,1)、冒泡排序、快速排序、直接選擇排序、二路歸并排序、堆排序和基于鏈式隊列的基數排序。

2、選做題

假設含n個記錄的序列中,其所有關鍵字為值介于v和w之間的整數,且其中很多關鍵字的值是相同的。則可按如下方法排序:另設數組number[v…w],令number[i]統計關鍵字為整數i的紀錄個數,然后按number重排序列以達到有序。試編寫算法實現上述排序方法,并討論此種方法的優缺點。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

實驗項目名稱: 查找 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

實驗8 查找

一、實驗目的和要求

(1)掌握順序表查找、有序表查找、索引順序表查找的各種算法。(2)掌握哈希表設計。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)在一個遞增有序的線性表中利用二分查找法查找數據元素x。

2、選做題

(2)構造一個哈希表,哈希函數采用除留余數法,哈希沖突解決方法采用鏈地址法。設計一個測試程序進行測試。

提示:構造哈希表只是完成查找的第一步,大家應該掌握在哈希表上進行查找的過程,可以試著編程序實現。程序清單:

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

算法與數據結構實驗報告篇二

金陵科技學院實驗報告

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

算法與數據結構 專業班級: 13網絡工程

1305106009 學生姓名: 陳韜

網絡與通信工程學院 指導教師: 沈奇 14 ——20 15 學年 第 1 學期

金陵科技學院教務處制

金陵科技學院實驗報告

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,要遵照以下字體、字號、間距等的具體要求。紙張一律采用a4的紙張。

實驗報告書寫說明

實驗報告中一至四項內容為必填項,包括實驗目的和要求;實驗儀器和設備;實驗內容與過程;實驗結果與分析。各院部可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用百分制,具體評分標準由各院部自行制定。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

金陵科技學院實驗報告

實驗項目名稱: 順序表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗1 順序表

一、實驗目的和要求

掌握順序表的定位、插入、刪除等操作。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個順序表,并逐個輸出順序表中所有數據元素的值。編寫主函數測試結果。

(2)編寫順序表定位操作子函數,在順序表中查找是否存在數據元素x。如果存在,返回順序表中和x值相等的第1個數據元素的序號(序號從0開始編號);如果不存在,返回-1。編寫主函數測試結果。(3)在遞增有序的順序表中插入一個新結點x,保持順序表的有序性。

解題思路:首先查找插入的位置,再移位,最后進行插入操作;從第一個元素開始找到第一個大于該新結點值x的元素位置i即為插入位置;然后將從表尾開始依次將元素后移一個位置直至元素i;最后將新結點x插入到i位置。

(4)刪除順序表中所有等于x的數據元素。

2、選做題

(5)已知兩個順序表a和b按元素值遞增有序排列,要求寫一算法實現將a和b歸并成一個按元素值遞減有序排列的順序表(允許表中含有值相同的元素)。

程序清單:

#include

#include

#define maxsize 100 typedef struct { int data[maxsize];int last;

金陵科技學院實驗報告

} sequenlist;sequenlist l={{1,3,5,5,7,8,10,12,17},8};void print_list(){ int i;for(i=0;i<=;i++)printf(“%4d”,[i]);} void find_all_x(int x){ int found=0,i;for(i=0;i<=;i++)if([i]==x){ printf(“%3d”,i+1);found=1;} if(found==0)printf(“-1n”);} void insert_x(int x){ int loc,i;for(i=0;i<=;i++)if(x

金陵科技學院實驗報告

loc=i;for(i=;i>=loc;i--)[i+1]=[i];[loc]=x;++;} void delete_x(int x){ int i,j,found=0;for(i=0;i<=;i++)if(x==[i]){ found=1;for(j=i+1;j<=;j++)[j-1]=[j];i--;--;} if(found==0)printf(“x is not foundn”);else { printf(“x is deletedn”);printf(“the list after deletion is:n”);print_list();

金陵科技學院實驗報告

} }

void main(){ int x,choice;while(1){ printf(“**********menu**********n”);printf(“ 1--printn”);printf(“ 2--searchn”);printf(“ 3--insertn”);printf(“ 4--deleten”);printf(“ 5--exitn”);printf(“please input your choice:”);scanf(“%d”,&choice);

switch(choice){case 1: printf(“the original list is:n”);print_list();break;case 2: printf(“pls input x you want to search:n”);

金陵科技學院實驗報告

scanf(“%d”,&x);find_all_x(x);break;case 3: printf(“pls input x you want to insert:n”);scanf(“%d”,&x);insert_x(x);printf(“the list after insertion is:n”);print_list();break;case 4: printf(“pls input x you want to delete:n”);scanf(“%d”,&x);delete_x(x);printf(“the list after deletion is:n”);print_list();break;case 5: exit(0);} } }

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 單鏈表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗2 單鏈表

一、實驗目的和要求

1、實驗目的

掌握單鏈表的定位、插入、刪除等操作。

2、實驗要求

(1)注意鏈表的空間是動態分配的,某結點不用之后要及時進行物理刪除,以便釋放其內存空間。

(2)鏈表不能實現直接定位,一定注意指針的保存,防止丟失。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個單鏈表,并逐個輸出單鏈表中所有數據元素。(2)在遞增有序的單鏈表中插入一個新結點x,保持單鏈表的有序性。

解題思路:首先查找插入的位置然后進行插入操作;從第一個結點開始找到第一個大于該新結點值的結點即為插入位置;然后在找到的此結點之前插入新結點;注意保留插入位置之前結點的指針才能完成插入操作。

(3)編寫實現帶頭結點單鏈表就地逆置的子函數,并編寫主函數測試結果。

2、選做題

已知指針la和lb分別指向兩個無頭結點單鏈表的首元結點。要求編一算法實現,從表la中刪除自第i個元素起共len個元素后,將它們插入到表lb中第j個元素之前。程序清單:

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 堆棧和隊列 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗3 堆棧和隊列

一、實驗目的和要求

(1)掌握應用棧解決問題的方法。(2)掌握利用棧進行表達式求和的算法。

(3)掌握隊列的存儲結構及基本操作實現,并能在相應的應用問題中正確選用它們。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)判斷一個算術表達式中開括號和閉括號是否配對。(2)測試“漢諾塔”問題。

(3)假設稱正讀和反讀都相同的字符序列為”回文”,試寫一個算法判別讀入的一個以’@’為結束符的字符序列是否是“回文”。

2、選做題

在順序存儲結構上實現輸出受限的雙端循環隊列的入列和出列算法。設每個元素表示一個待處理的作業,元素值表示作業的預計時間。入隊列采取簡化的短作業優先原則,若一個新提交的作業的預計執行時間小于隊頭和隊尾作業的平均時間,則插入在隊頭,否則插入在隊尾。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 串 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗4 串

一、實驗目的和要求

掌握串的存儲及應用。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫輸出字符串s中值等于字符ch的第一個字符的函數,并用主函數測試結果。

(2)編寫輸出字符串s中值等于字符ch的所有字符的函數,并用主函數測試結果。

解題思路:可以將第一題程序改進成一個子函數,在本題中循環調用。(3)設字符串采用單字符的鏈式存儲結構,編程刪除串s從位置i開始長度為k的子串。

2、選做題

假設以鏈結構表示串,編寫算法實現將串s插入到串t中某個字符之后,若串t中不存在這個字符,則將串s聯接在串t的末尾。

提示:為提高程序的通用性,插入位置字符應設計為從鍵盤輸入。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 二叉樹 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗5 二叉樹

一、實驗目的和要求

(1)掌握二叉樹的生成,以及前、中、后序遍歷算法。(2)掌握應用二叉樹遞歸遍歷思想解決問題的方法。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)建立一棵二叉樹。對此樹進行前序遍歷、中序遍歷及后序遍歷,輸出遍歷序列。

(2)在第一題基礎上,求二叉樹中葉結點的個數。(3)在第一題基礎上,求二叉樹中結點總數。(4)在第一題基礎上,求二叉樹的深度。

2、選做題

已知一棵完全二叉樹存于順序表sa中,[1…]存儲結點的值。試編寫算法由此順序存儲結構建立該二叉樹的二叉鏈表。

解題思路:根據完全二叉樹順序存儲的性質來確定二叉樹的父子關系即“還原”了二叉樹,之后再按照二叉樹二叉鏈表的構造方法進行建立。完全二叉樹順序存儲的一個重要性質為,第i個結點的左孩子是編號為2i的結點,第i個結點的右孩子是編號為2i+1的結點。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 圖 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗6 圖

一、實驗目的和要求

(1)熟練掌握圖的基本概念、構造及其存儲結構。

(2)熟練掌握對圖的深度優先搜索遍歷和廣度優先搜索遍歷的算法。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)構造一個無向圖(用鄰接矩陣表示存儲結構)。

(2)對上面所構造的無向圖,進行深度優先遍歷和廣度優先遍歷,輸出遍歷序列。

2、選做題

采用鄰接表存儲結構,編寫一個判別無向圖中任意給定的兩個頂點之間是否存在一條長度為k的簡單路徑的算法。簡單路徑是指其頂點序列中不含有重復頂點的路徑。提示:兩個頂點及k值均作為參數給出。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 排序 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗7 排序

一、實驗目的和要求

(1)熟練掌握希爾排序、堆排序、直接插入排序、起泡排序、快速排序、直接選擇排序、歸并排序和基數排序的基本概念。

(2)掌握以上各種排序的算法。區分以上不同排序的優、缺點。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

用隨機數產生100000個待排序數據元素的關鍵字值。測試下列各排序函數的機器實際執行時間(至少測試兩個):直接插入排序、希爾排序(增量為4,2,1)、冒泡排序、快速排序、直接選擇排序、堆排序。

2、選做題

假設含n個記錄的序列中,其所有關鍵字為值介于v和w之間的整數,且其中很多關鍵字的值是相同的。則可按如下方法排序:另設數組number[v…w],令number[i]統計關鍵字為整數i的紀錄個數,然后按number重排序列以達到有序。試編寫算法實現上述排序方法,并討論此種方法的優缺點。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 查找 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗8 查找

一、實驗目的和要求

(1)掌握順序表查找、有序表查找、索引順序表查找的各種算法。(2)掌握哈希表設計。

二、實驗儀器和設備

turbo c 2.0/ visual c++

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)在一個遞增有序的線性表中利用二分查找法查找數據元素x。

2、選做題

(2)構造一個哈希表,哈希函數采用除留余數法,哈希沖突解決方法采用鏈地址法。設計一個測試程序進行測試。

提示:構造哈希表只是完成查找的第一步,大家應該掌握在哈希表上進行查找的過程,可以試著編程序實現。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

算法與數據結構實驗報告篇三

北 京 郵 電 大 學

計 算 機 科 學 與 技 術 學 院

算 法 與 數 據 結 構

實 驗 指 導 書

楊俊、徐塞虹、漆濤 編著

2006年9月 算法與數據結構 實驗指導書

目錄

實驗要求....................................................................................................................................3 試驗

一、約瑟夫環..............................................................................…………………..……4 試驗

二、長整數四則運算運算………………………………………………………………4 實驗三、八皇后.....................................……..........................................................................5 實驗

四、騎士遍歷......................................……………………..............................................5 實驗

五、桌面計算器...............................……………..............................................................6 實驗

六、平衡排序二叉樹....................…...…….....................................................................6 試驗

七、多重集合的實現……......................................………………………………………7 試驗

八、圖論………………………………………………………………………….……..8 實驗

八、內部排序性能的比較..........………………….............................................................8 教材及主要參考文獻………………………………………………………………………………..9 2 北京郵電大學 計算機科學與技術學院 算法與數據結構 實驗指導書

實驗要求

一、本課程在講課期間需要做上機實驗,目的之一是檢查學生對所學算法的掌握和理解程度;其次是鍛煉學生的團隊合作精神。

二、成績:

1、編碼:占整個實驗成績的50%;

2、測試:占整個實驗成績的20%;

3、文檔:占整個實驗成績的30%。

三、按時提交上機文檔,實驗文檔包含以下各項:

1、問題描述:實驗題目、內容和要求;

2、算法思路:實驗小組對問題的解決方法的文字描述;

3、算法描述:用類算法語言等對算法進行描述;

4、源程序及驅動程序:上機實驗編制的代碼源程序及程序運行環境;

5、測試數據:對算法的測試用例;

6、結果分析和結論:對算法及測試結果的分析及結論;

7、心得體會:通過實驗獲得的心得體會;

8、分工及簽名:最后是小組成員的分工及簽名。

北京郵電大學 計算機科學與技術學院-1-算法與數據結構 實驗指導書

實驗

一、約瑟夫環

一、實驗類別:設計型實驗。

二、問題描述:約瑟夫環問題是:n個人p0,p1,…pn 圍坐成一個圓環。每個人pk持有一個秘密的數字ck。0 < ck <= m。開始時隨機選取一個數 c = c0。每個人從p0 開始從1開始報數。報到數c 的人出對。然后以出隊的人的秘密數字作為新的c 值。從出隊者的下一個人順時針從1 開始再報數。直到所有的人全部出隊。

三、實驗目的:檢查學生對各種線性表的實現的掌握程度。

四、實驗學時:2小時

五、實驗組人數:1人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):各種隊列的實現。

八、實驗內容和要求:至少用3種以上的線性表來完成此試驗。可以在帶頭節點的和不帶頭節點的線性表、循環的和非循環線性表、動態鏈表和靜態鏈表以及向量(數組)之間選擇三種。從空表開始,為每個人生成一個隨機數。然后將此人加入到線性表之中。

九、可研究與探索的問題:給出各種實現的優缺點比較。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。給出各種線性表實現的優缺點分析。

實驗

二、長整數四則運算

一、實驗類別:驗證實驗。

二、問題描述:計算機cpu本身可以做32位或者64位的整數四則運算。本試驗要求對任意大小的整數實現其四則運算。將一個整數n表示為

n = ±(d0 + d1*b + d2*b2 + ….+ bk*bk)

其中 1< b <= 256 為一個取定的整數。0 <= dk < b。用線性表存儲{bk}。給出整數的四則運算程序。

三、實驗目的:對具體的問題選擇適當的線性表實現。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):各種隊列的實現。

八、實驗內容和要求:至少用2種以上的線性表來完成此試驗。比較不同線性表實現的速度。

九、可研究與探索的問題:1)對具體問題選擇合適的線性表實現。2)b 的選取問題。可 否選擇更大的基b。b的選擇所應考慮的因素。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。能夠得出用向量(數組)實現的線性表速度最快。

實驗三、八皇后問題

一、實驗類別:設計型實驗。

二、問題描述:在n*n 的國際象棋棋盤上放置n個皇后,使每個皇后不受其他皇后的攻擊。

三、實驗目的:檢查學生對堆棧和遞歸程序掌握程度。

四、實驗學時:2小時

五、實驗組人數:1人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):遞歸程序與堆棧

八、實驗內容和要求: 分別用遞歸和堆棧完成此試驗。統計程序運行時間與問題規模n 的關系。

九、可研究與探索的問題:問題的復雜度。當n 比較大時,討論提高程序運行的方法。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。找出程序運行速度的瓶頸。

實驗

四、騎士遍歷

一、實驗類別:設計型實驗。

二、問題描述:在國際象棋n*n的棋盤中,一匹馬從棋盤中任意一格出發,要求用n2-1步走完所有的n2個格子。每個格子走且只走過一次。應如何走? 試給出算法實現。

三、實驗目的:檢查學生對堆棧與回溯算法的掌握。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):堆棧與回溯

八、實驗內容和要求:用堆棧完成此試驗。統計程序運行時間與問題規模n 的關系。

九、可研究與探索的問題:怎樣枚舉所有馬下一步可走的位置。選擇下一步所走位置的策略。注意由于這個程序非常耗時,在初期程序調試時應取較小的n。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。找出程序運行速度的瓶頸。給出不同選擇策略的程序運行 速度的比較結果。

實驗

五、桌面計算器(表達式求值)

一、實驗類別:設計型實驗。

二、問題描述:模仿unix系統下的dc命令。輸入表達式字符串,按回車鍵后給出表達式的值。操作數為實數。

1)操作符有 “+”、“-”、“*”、“/”、“^”(乘方)

2)還可以有臨時變量。用法如 pi = 3.1415926,r = 3, r*pi^2 3)還可以有事先定義的函數如:“sin()”(正弦)、“cos()”(余弦)、“log()”(對數)、“ln()”(自然對數)等函數。

三、實驗目的:檢查學生用堆棧解決實際問題。為本課程后續的內容提供伏筆。也為后繼的課程如編譯原理預習。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):堆棧,線性表,命令行參數的處理。

八、實驗內容和要求:學生應至少應實現處理五個運算符:“+”、“-”、“*”、“/”、“^”(乘方)。可以用一個線性表來存儲臨時變量。另一個線性表來存儲預定義的函數名。

九、可研究與探索的問題:查找臨時變量名的不同方法。如哈希表,二叉樹。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。

實驗

六、平衡排序二叉樹

一、實驗類別:設計型實驗。

二、問題描述:隨機生成一組整數p0,p1,…pn-1。將這組整數按生成的次序插入到一個平衡排序二叉樹中。然后將p0,p1,…pn-1隨機重新排列為q0,q1,…qn-1。再按照次次序將這些整數從生成的平衡排序二叉樹刪除。

三、實驗目的:平衡排序二叉樹的插入和刪除。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):平衡排序二叉樹的插入和刪除中的旋轉。

八、實驗內容和要求:統計在平衡排序二叉樹的插入和刪除過程中各種旋轉的出現次數。

九、可研究與探索的問題:研究平衡排序二叉樹與一般的排序二叉樹在插入和刪除方面的性能比較。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。給出在均勻的隨機分布下,平衡排序二叉樹與一般排序二叉樹的性能比較。

實驗

七、多重集合的實現

一、實驗類別:設計型實驗。

二、問題描述:實現數學上多重集合。所謂的多重集合類似于集合,但是一件東西可以放置多個副本。就如一個菜籃子里面可以放兩個蘋果。

三、實驗目的:查找結構的各種實現。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):平衡排序二叉樹的插入和刪除、遍歷,查找。哈希查找結構。

八、實驗內容和要求: 假設集合中包含的元素是可以排序的。將多重集合封裝成一個類。具體的實現可以是中序線索化的平衡排序二叉樹,或者帶父節點指針的平衡排序二叉樹。多重集合的界面如下:

template

//假設類型 t 是可以排序的 class multi_set

{

multi_set(void);//構造函數,初始化為空集合~multi_set(void);//析構函數

multi_set& operator=(multi_set const a);//重載運算符=

bool contains(t const& v)const;//如果集合包含v 則返回true,否則返回false

multi_set& operator+=(multi_set const&a);//將集合a 并到自身中。

multi_set& operator-=(multi_set const& a);//自身減去集合a

multi_set& operator-=(t const& a);//自身減去一個元素a

};//~class multi_set

//返回集合a,b的并

template

multi_set

mult_set

:: operator+(multi_set

const& a,multi_set

const& b);

//返回集合a,b的差

template

multi_set

mult_set

:: operator-(multi_set

const& a,multi_set

const& b);

//返回 a –{v}

template

multi_set

multi_set

::operator-(multi_set const& a,t const& v);

九、可研究與探索的問題:哈希函數的選取。比較哈希與平衡排序二叉樹的優缺點、性能和速度。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。給出平衡排序二叉樹實現的多重集合和用哈希實現的多重集合的性能比較。

實驗

八、圖論

一、實驗類別:設計型實驗。

二、問題描述:實現圖論中的各種算法。

1)最小代價生成樹的krscal 算法和prim算法。2)單源點的最短路徑的dijstra 算法。3)深度優先遍歷與廣度優先遍歷。4)拓撲排序

5)求所有節點之間的最短路徑floyd算法

(在這五個小題中只要選作一個即可。)

三、實驗目的:學習根據不同的運算來選取不同的存儲結構。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):圖論中的各種算法及其復雜度。根據不同的操作來決定圖的存儲結構。

八、實驗內容和要求:至少實現上面五個小題目中的一個。從文件中讀入一個圖的信息。

九、可研究與探索的問題:高級數據結構如堆、并查集在圖論算法中的應用。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。給出在均勻的隨機分布下,平衡排序二叉樹與一般排序二叉樹的性能比較。

實驗

九、內部排序性能的比較

一、實驗類別:設計型實驗。

二、問題描述:隨機生成一組整數p0,p1,…pn-1。對這組數據進行排序。

三、實驗目的:比較不同排序算法的性能。

四、實驗學時:2小時

五、實驗組人數:3人。

六、實驗設備環境:計算機。

七、實驗原理及要點(知識點):各種內部排序算法。

八、實驗內容和要求: 1)實現插入排序,選擇排序,希爾排序,堆排序以及快速排序。2)快速排序的多種版本。3)對單鏈表實現歸并排序。4)基數排序。

5)對小型問題(n = 10)、中型問題(n = 1000)以及大型問題(n = 1百萬)分別統計不同排序算法的鍵值比較次數、鍵值移動次數以及程序運行時間。

26)排序算法的時間復雜度可以有o(n)和 o(n log n)。對相同復雜度的算法,給出他們運行時間與時間復雜度的比值。

九、可研究與探索的問題:研究快速排序算法的不同改進方法。自省排序算法。只需要移動而不需要交換的快速排序方法。

十、驗收及實驗報告要求:現場操作及運行效果驗收。要求程序必須上機編譯通過并且正確運行。給出試驗報告。給出在均勻的隨機分布下,對大中小問題的最快的排序算法。

教材及主要參考文獻

[1] 嚴蔚敏、吳偉民,數據結構習題集,清華大學出版社,1999年

[2] john d, data structures with c++, china machine press, 2002.[3] mark allen weiss, data structures and problem solving using c++, 2ed, 清華大學出版社。2004年。[4] robert sedgewick,algorithms in c part 1 – 4: fundamentals, data structures, sorting, rdsearching, 3, 中國電力出版社,2003年。

[5] 嚴蔚敏、吳偉民,數據結構(c語言版),清華大學出版社,2006年

算法與數據結構實驗報告篇四

金陵科技學院實驗報告

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

算法與數據結構 專業班級:

學生姓名:

指導教師: ——20 學年 第 學期

金陵科技學院教務處制

金陵科技學院實驗報告

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,要遵照以下字體、字號、間距等的具體要求。紙張一律采用a4的紙張。

實驗報告書寫說明

實驗報告中一至四項內容為必填項,包括實驗目的和要求;實驗儀器和設備;實驗內容與過程;實驗結果與分析。各院部可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用百分制,具體評分標準由各院部自行制定。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

金陵科技學院實驗報告

實驗項目名稱: 順序表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗1 順序表

一、實驗目的和要求

掌握順序表的定位、插入、刪除等操作。

二、實驗儀器和設備

vc6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個順序表,并逐個輸出順序表中所有數據元素的值。編寫主函數測試結果。

(2)編寫順序表定位操作子函數,在順序表中查找是否存在數據元素x。如果存在,返回順序表中和x值相等的第1個數據元素的序號(序號從0開始編號);如果不存在,返回-1。編寫主函數測試結果。(3)在遞增有序的順序表中插入一個新結點x,保持順序表的有序性。

解題思路:首先查找插入的位置,再移位,最后進行插入操作;從第一個元素開始找到第一個大于該新結點值x的元素位置i即為插入位置;然后將從表尾開始依次將元素后移一個位置直至元素i;最后將新結點x插入到i位置。

(4)刪除順序表中所有等于x的數據元素。

2、選做題

(5)已知兩個順序表a和b按元素值遞增有序排列,要求寫一算法實現將a和b歸并成一個按元素值遞減有序排列的順序表(允許表中含有值相同的元素)。

程序清單:

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 單鏈表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗2 單鏈表

一、實驗目的和要求

1、實驗目的

掌握單鏈表的定位、插入、刪除等操作。

2、實驗要求

(1)注意鏈表的空間是動態分配的,某結點不用之后要及時進行物理刪除,以便釋放其內存空間。

(2)鏈表不能實現直接定位,一定注意指針的保存,防止丟失。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個單鏈表,并逐個輸出單鏈表中所有數據元素。(2)在遞增有序的單鏈表中插入一個新結點x,保持單鏈表的有序性。

解題思路:首先查找插入的位置然后進行插入操作;從第一個結點開始找到第一個大于該新結點值的結點即為插入位置;然后在找到的此結點之前插入新結點;注意保留插入位置之前結點的指針才能完成插入操作。

(3)編寫實現帶頭結點單鏈表就地逆置的子函數,并編寫主函數測試結果。

2、選做題

已知指針la和lb分別指向兩個無頭結點單鏈表的首元結點。要求編一算法實現,從表la中刪除自第i個元素起共len個元素后,將它們插入到表lb中第j個元素之前。程序清單:

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 堆棧和隊列 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗3 堆棧和隊列

一、實驗目的和要求

(1)掌握應用棧解決問題的方法。(2)掌握利用棧進行表達式求和的算法。

(3)掌握隊列的存儲結構及基本操作實現,并能在相應的應用問題中正確選用它們。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)判斷一個算術表達式中開括號和閉括號是否配對。(2)測試“漢諾塔”問題。

(3)假設稱正讀和反讀都相同的字符序列為”回文”,試寫一個算法判別讀入的一個以’@’為結束符的字符序列是否是“回文”。

2、選做題

在順序存儲結構上實現輸出受限的雙端循環隊列的入列和出列算法。設每個元素表示一個待處理的作業,元素值表示作業的預計時間。入隊列采取簡化的短作業優先原則,若一個新提交的作業的預計執行時間小于隊頭和隊尾作業的平均時間,則插入在隊頭,否則插入在隊尾。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 串 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗4 串

一、實驗目的和要求

掌握串的存儲及應用。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫輸出字符串s中值等于字符ch的第一個字符的函數,并用主函數測試結果。

(2)編寫輸出字符串s中值等于字符ch的所有字符的函數,并用主函數測試結果。

解題思路:可以將第一題程序改進成一個子函數,在本題中循環調用。(3)設字符串采用單字符的鏈式存儲結構,編程刪除串s從位置i開始長度為k的子串。

2、選做題

假設以鏈結構表示串,編寫算法實現將串s插入到串t中某個字符之后,若串t中不存在這個字符,則將串s聯接在串t的末尾。

提示:為提高程序的通用性,插入位置字符應設計為從鍵盤輸入。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 二叉樹 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗5 二叉樹

一、實驗目的和要求

(1)掌握二叉樹的生成,以及前、中、后序遍歷算法。(2)掌握應用二叉樹遞歸遍歷思想解決問題的方法。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)建立一棵二叉樹。對此樹進行前序遍歷、中序遍歷及后序遍歷,輸出遍歷序列。

(2)在第一題基礎上,求二叉樹中葉結點的個數。(3)在第一題基礎上,求二叉樹中結點總數。(4)在第一題基礎上,求二叉樹的深度。

2、選做題

已知一棵完全二叉樹存于順序表sa中,[1…]存儲結點的值。試編寫算法由此順序存儲結構建立該二叉樹的二叉鏈表。

解題思路:根據完全二叉樹順序存儲的性質來確定二叉樹的父子關系即“還原”了二叉樹,之后再按照二叉樹二叉鏈表的構造方法進行建立。完全二叉樹順序存儲的一個重要性質為,第i個結點的左孩子是編號為2i的結點,第i個結點的右孩子是編號為2i+1的結點。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 圖 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗6 圖

一、實驗目的和要求

(1)熟練掌握圖的基本概念、構造及其存儲結構。

(2)熟練掌握對圖的深度優先搜索遍歷和廣度優先搜索遍歷的算法。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)構造一個無向圖(用鄰接矩陣表示存儲結構)。

(2)對上面所構造的無向圖,進行深度優先遍歷和廣度優先遍歷,輸出遍歷序列。

2、選做題

采用鄰接表存儲結構,編寫一個判別無向圖中任意給定的兩個頂點之間是否存在一條長度為k的簡單路徑的算法。簡單路徑是指其頂點序列中不含有重復頂點的路徑。提示:兩個頂點及k值均作為參數給出。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 排序 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗7 排序

一、實驗目的和要求

(1)熟練掌握希爾排序、堆排序、直接插入排序、起泡排序、快速排序、直接選擇排序、歸并排序和基數排序的基本概念。

(2)掌握以上各種排序的算法。區分以上不同排序的優、缺點。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

用隨機數產生100000個待排序數據元素的關鍵字值。測試下列各排序函數的機器實際執行時間(至少測試兩個):直接插入排序、希爾排序(增量為4,2,1)、冒泡排序、快速排序、直接選擇排序、二路歸并排序、堆排序和基于鏈式隊列的基數排序。

2、選做題

假設含n個記錄的序列中,其所有關鍵字為值介于v和w之間的整數,且其中很多關鍵字的值是相同的。則可按如下方法排序:另設數組number[v…w],令number[i]統計關鍵字為整數i的紀錄個數,然后按number重排序列以達到有序。試編寫算法實現上述排序方法,并討論此種方法的優缺點。程序清單:

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

實驗項目名稱: 查找 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗8 查找

一、實驗目的和要求

(1)掌握順序表查找、有序表查找、索引順序表查找的各種算法。(2)掌握哈希表設計。

二、實驗儀器和設備

visual c++6.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)在一個遞增有序的線性表中利用二分查找法查找數據元素x。

2、選做題

(2)構造一個哈希表,哈希函數采用除留余數法,哈希沖突解決方法采用鏈地址法。設計一個測試程序進行測試。

提示:構造哈希表只是完成查找的第一步,大家應該掌握在哈希表上進行查找的過程,可以試著編程序實現。程序清單:

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

算法與數據結構實驗報告篇五

金陵科技學院實驗報告

學 生 實 驗 報 告 冊

課程名稱:

學生學號:

所屬院部:

(理工類)

算法與數據結構 專業班級:

學生姓名:

指導教師: 14 ——20 15 學年 第 二 學期

金陵科技學院教務處制

金陵科技學院實驗報告

實驗報告書寫要求

實驗報告原則上要求學生手寫,要求書寫工整。若因課程特點需打印的,要遵照以下字體、字號、間距等的具體要求。紙張一律采用a4的紙張。

實驗報告書寫說明

實驗報告中一至四項內容為必填項,包括實驗目的和要求;實驗儀器和設備;實驗內容與過程;實驗結果與分析。各院部可根據學科特點和實驗具體要求增加項目。

填寫注意事項

(1)細致觀察,及時、準確、如實記錄。(2)準確說明,層次清晰。

(3)盡量采用專用術語來說明事物。

(4)外文、符號、公式要準確,應使用統一規定的名詞和符號。(5)應獨立完成實驗報告的書寫,嚴禁抄襲、復印,一經發現,以零分論處。

實驗報告批改說明

實驗報告的批改要及時、認真、仔細,一律用紅色筆批改。實驗報告的批改成績采用百分制,具體評分標準由各院部自行制定。

實驗報告裝訂要求

實驗批改完畢后,任課老師將每門課程的每個實驗項目的實驗報告以自然班為單位、按學號升序排列,裝訂成冊,并附上一份該門課程的實驗大綱。

金陵科技學院實驗報告

實驗項目名稱: 順序表 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗1 順序表

一、實驗目的和要求

掌握順序表的定位、插入、刪除等操作。

二、實驗儀器和設備

turbo c 2.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個順序表,并逐個輸出順序表中所有數據元素的值。編寫主函數測試結果。

(2)編寫順序表定位操作子函數,在順序表中查找是否存在數據元素x。如果存在,返回順序表中和x值相等的第1個數據元素的序號(序號從0開始編號);如果不存在,返回-1。編寫主函數測試結果。(3)在遞增有序的順序表中插入一個新結點x,保持順序表的有序性。

解題思路:首先查找插入的位置,再移位,最后進行插入操作;從第一個元素開始找到第一個大于該新結點值x的元素位置i即為插入位置;然后將從表尾開始依次將元素后移一個位置直至元素i;最后將新結點x插入到i位置。

(4)刪除順序表中所有等于x的數據元素。

2、選做題

(5)已知兩個順序表a和b按元素值遞增有序排列,要求寫一算法實現將a和b歸并成一個按元素值遞減有序排列的順序表(允許表中含有值相同的元素)。

程序清單:

1、(1)#include

#include

#define maxsize 100 typedef int datatype;typedef struct {

datatype a[maxsize];

int size;}sequence_list;sequence_list mylist;void display(sequence_list slt)

金陵科技學院實驗報告

{

int i;

if(==0)

printf(“n 順表表是空的”);

else

for(i=0;i

printf(“%5d”,slt.a[i]);} void init(sequence_list *slt){

slt->size=0;} void main(){ int i,number;init(&mylist);printf(“順序表是空的請建立順序表!”);printf(“n”);printf(“請輸入順序表中的元素個數!n”);scanf(“%d”,&number);=number;for(i=0;i

scanf(“%d”,&mylist.a[i]);}

}(2)#include

#include

#define maxsize 100 typedef int datatype;typedef struct {

datatype a[maxsize];

int size;}sequence_list;sequence_list mylist;void display(sequence_list slt){

int i;display(mylist);printf(“n”);

金陵科技學院實驗報告

if(==0)

printf(“n 順表表是空的”);

else

for(i=0;i

printf(“%5d”,slt.a[i]);} void init(sequence_list *slt){

slt->size=0;} int find(sequence_list *slt,int x){ int i,a;for(i=0;i

size;i++){

if(x==slt->a[i])

{

a=i;

break;

} } if(i!=slt->size)

return a;

else

return-1;} void main(){ int i,number,a,b;init(&mylist);printf(“順序表是空的請建立順序表!”);printf(“n”);printf(“請輸入順序表中的元素個數!n”);scanf(“%d”,&number);=number;for(i=0;i

scanf(“%d”,&mylist.a[i]);} display(mylist);printf(“n”);printf(“輸入要查找的數:”);scanf(“%d”,&a);b=find(&mylist,a);

金陵科技學院實驗報告

} if(b!=-1){ printf(“順序表的下標為:%dn”,b);} else printf(“can not be found!”);(3)#include

#include

#define maxsize 100 typedef int datatype;typedef struct { datatype a[maxsize];int size;}sequence_list;sequence_list mylist;void display(sequence_list slt){ int i;if(==0)printf(“n 順表表是空的”);else for(i=0;i

size=0;} void sort(sequence_list *slt){ int i,j,temp;//交換法排序

for(i=0;i

size;i++){

for(j=i+1;j

size;j++)

{

if(slt->a[i]>slt->a[j])

{

temp=slt->a[i];

slt->a[i]=slt->a[j];

金陵科技學院實驗報告

slt->a[j]=temp;

}

} } } void append(sequence_list *slt,int x){ slt->a[slt->size]=x;slt->size++;sort(&mylist);} void main(){ int i,number,x;init(&mylist);printf(“順序表是空的請建立順序表!”);printf(“n”);printf(“請輸入順序表中的元素個數!n”);scanf(“%d”,&number);=number;for(i=0;i

scanf(“%d”,&mylist.a[i]);} display(mylist);sort(&mylist);printf(“n”);display(mylist);printf(“n”);printf(“輸入要插入的元素:”);printf(“n”);scanf(“%d”,&x);append(&mylist,x);display(mylist);printf(“n”);}(4)#include

#include

#define maxsize 100

typedef int datatype;typedef struct

金陵科技學院實驗報告

{ datatype a[maxsize];int size;}sequence_list;sequence_list mylist;void display(sequence_list slt){ int i;if( == 0)

printf(“n 順表表是空的”);else for(i = 0;i

printf(“%5d”, slt.a[i]);} void init(sequence_list *slt){ slt->size = 0;} void sort(sequence_list *slt){ int i, j, temp;//交換法排序

for(i = 0;i

size;i++){

for(j = i + 1;j

size;j++)

{

if(slt->a[i]>slt->a[j])

{

temp = slt->a[i];

slt->a[i] = slt->a[j];

slt->a[j] = temp;

}

} } } void del(sequence_list *slt, int x){ int m[maxsize];int i, n = 0, j, a = 0;for(i = 0;i

size;i++){

if(slt->a[i]!= x)

{

金陵科技學院實驗報告

m[n++] = slt->a[i];

}

else a++;

} slt->size = slt->size1, from, to, denpend_on);//先將初始塔的前n-1個盤子借助目的塔移動到借用塔上

move(n, from, to);//將剩下的一個盤子移動到目的塔上

hanoi(n1);} int ispalindrome(char * str){ int len = strlen(str);int i = 0;for(;i

if(str[i]!= str[len1])return 0;} return 1;} void main(){ char * str =(char *)malloc(init_size * sizeof(char));char ch;int i = 0;//字符串當前字符數

int len = init_size;//字符串空間大小

while(ch = getchar()){ // 循環錄入字符串

if(ch == '@'){ ///如果按回車鍵,則結束

str[i] = '';///字符串結束標志

break;

}

金陵科技學院實驗報告

if(i < len-1){

str[i] = ch;

}

else {

str =(char *)realloc(str,(len + incr_size)* sizeof(char));//增加存儲空間

str[i] = ch;

len += incr_size;//重新記錄字符串空間

}

i++;} if(ispalindrome(str)!= 0){

printf(“yesn”);} else {

printf(“non”);} }

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)(1)

(2)

金陵科技學院實驗報告

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)

金陵科技學院實驗報告

通過該實驗我熟練掌握了如何通過堆棧和隊列來判斷一個算術表達式中開括號和閉括號是否配對,測試“漢諾塔”問題以及判斷回文數。

金陵科技學院實驗報告

實驗項目名稱: 串 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗4 串

一、實驗目的和要求

掌握串的存儲及應用。

二、實驗儀器和設備

turbo c 2.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)編寫輸出字符串s中值等于字符ch的第一個字符的函數,并用主函數測試結果。

(2)編寫輸出字符串s中值等于字符ch的所有字符的函數,并用主函數測試結果。

解題思路:可以將第一題程序改進成一個子函數,在本題中循環調用。(3)設字符串采用單字符的鏈式存儲結構,編程刪除串s從位置i開始長度為k的子串。

2、選做題

假設以鏈結構表示串,編寫算法實現將串s插入到串t中某個字符之后,若串t中不存在這個字符,則將串s聯接在串t的末尾。

提示:為提高程序的通用性,插入位置字符應設計為從鍵盤輸入。程序清單:

(1)#include

void main(){ char s[100],ch,c;int i;printf(“創建字符串!”);gets(s);printf(“輸入要查找的字符:”);scanf(“%c”,&ch);for(i=0;s[i]!='';i++);{

if(ch==s[i])

{

c=s[i];

金陵科技學院實驗報告

} }

} if(s[i]){ printf(“輸出字符:”);putchar(c);printf(“n”);} else { printf(“沒有找到!”);}(2)#include

#include

void find(char *s,char ch){ int i,j=0;char c;

for(i=0;s[i]!='';i++){

if(ch==s[i])

{

c=s[i];

j++;

}

}

if((i-1)!=strlen(s)){

printf(“有%d個元素”,j);printf(“n”);printf(“輸出字符:”);putchar(c);printf(“n”);} else {

金陵科技學院實驗報告

printf(“沒有找到!”);} } void main(){ char s[100],ch;int i;printf(“創建字符串!”);gets(s);printf(“輸入要查找的字符:”);scanf(“%c”,&ch);find(s,ch);}(3)#include

#include

typedef struct linknode { char data;struct linknode *next;}linkstring;linkstring *creatlink(linkstring *s){ linkstring *p = null, *q = null;char ch;ch = getchar();while(ch!= '$'){

p = malloc(sizeof(linkstring));

p->data = ch;

金陵科技學院實驗報告

if(s == null)s = p, q = p;

else

q->next = p, q = p;

ch = getchar();} if(q->next!= null)q->next = null;return s;} linkstring *delete(linkstring *s, int i, int k)//足夠長 { linkstring *p = s, *q;int m = 2;while(m

p = p->next;

m++;} m = 0;if(i == 1)while(m

假定字符串金陵科技學院實驗報告

s = p->next;

free(p);

p = s;

m++;} else while(m

q = p->next;

p->next = q->next;

free(q);

m++;} return s;} void output(linkstring *s){ linkstring *p = s;while(p!= null){

printf(“%2c”, p->data);

p = p->next;

金陵科技學院實驗報告

} } int main(){ linkstring *s = null;int i, k;s = creatlink(s);output(s);printf(“n”);printf(“please enter the location and the length:”);scanf(“%d%d”, &i, &k);s = delete(s, i, k);getchar();output(s);printf(“n”);return 0;}

金陵科技學院實驗報告

金陵科技學院實驗報告

四、實驗結果與分析(程序運行結果及其分析)

五、實驗體會(遇到問題及解決辦法,編程后的心得體會)通過該實驗我熟練掌握了如何建立一個串,如何查找串中的元素以及

金陵科技學院實驗報告

刪除指定的子串。

金陵科技學院實驗報告

實驗項目名稱: 二叉樹 實驗學時: 2 同組學生姓名: 實驗地點: 實驗日期: 實驗成績: 批改教師: 批改時間:

金陵科技學院實驗報告

實驗5 二叉樹

一、實驗目的和要求

(1)掌握二叉樹的生成,以及前、中、后序遍歷算法。(2)掌握應用二叉樹遞歸遍歷思想解決問題的方法。

二、實驗儀器和設備

turbo c 2.0

三、實驗內容與過程(含程序清單及流程圖)

1、必做題

(1)建立一棵二叉樹。對此樹進行前序遍歷、中序遍歷及后序遍歷,輸出遍歷序列。

(2)在第一題基礎上,求二叉樹中葉結點的個數。(3)在第一題基礎上,求二叉樹中結點總數。(4)在第一題基礎上,求二叉樹的深度。

2、選做題

已知一棵完全二叉樹存于順序表sa中,[1…]存儲結點的值。試編寫算法由此順序存儲結構建立該二叉樹的二叉鏈表。

解題思路:根據完全二叉樹順序存儲的性質來確定二叉樹的父子關系即“還原”了二叉樹,之后再按照二叉樹二叉鏈表的構造方法進行建立。完全二叉樹順序存儲的一個重要性質為,第i個結點的左孩子是編號為2i的結點,第i個結點的右孩子是編號為2i+1的結點。程序清單:

(1)#include

#include

#include

int twochild;//有兩個孩子的結點數 int leaf;//葉子數 int node;//結點數

using namespace std;typedef struct binode{ int data;struct binode *lchild,*rchild;}binode,*bitree;

金陵科技學院實驗報告

typedef struct{ bitree elem[100];int top;}stack;

bitree creat_bt(){ //按擴展前序建二叉樹 bitree t;int x;scanf(“%d”,&x);if(x==0)t=null;//以0作為結束

else { t=(bitree)malloc(sizeof(binode));t->data=x;printf(“請輸入%d結點的左孩子結點(若沒有,請輸入 0)”,t->data);t->lchild=creat_bt();printf(“請輸入%d結點的右孩子結點(若沒有,請輸入 0)”,t->data);t->rchild=creat_bt();} return t;}

void preorder(bitree t){ if(t){ printf(“%dn”,t->data);preorder(t->lchild);preorder(t->rchild);} }

void inorder(bitree t){ if(t){ inorder(t->lchild);printf(“%dn”,t->data);inorder(t->rchild);} }

void postorder(bitree t){ if(t){ postorder(t->lchild);

全文閱讀已結束,如果需要下載本文請點擊

下載此文檔
a.付費復制
付費獲得該文章復制權限
特價:5.99元 10元
微信掃碼支付
已付款請點這里
b.包月復制
付費后30天內不限量復制
特價:9.99元 10元
微信掃碼支付
已付款請點這里 聯系客服
主站蜘蛛池模板: 欧美大片在线看免费观看 | 欧美成人中文字幕 | 国产高清免费 | 东京热无码av一区二区 | 无码精品人妻一区二区三区湄公河 | 巨大乳做爰视频在线看 | 激情按摩系列片aaaa | 日本一级二级视频 | 泽村玲子在线中文字幕 | 国产精品无码一区二区三区在 | 噜噜噜狠狠夜夜躁精品仙踪林 | 国产又黄又硬又湿又黄的网站免费 | 爆操网站 | 国产亚洲精品女人久久久久久 | 国产精品极品白嫩 | 中文字幕 亚洲精品 第1页 | 亚洲天堂视频一区 | 欧美大屁股熟妇bbbbbb | 中文字幕人成人乱码亚洲电影 | 国产乱淫av片杨贵妃 | 成年人黄色一级片 | 亚洲无吗视频 | 农村偷人一级超爽毛片 | 狠狠草视频 | 在线视频中文 | 国产成人精品亚洲7777 | 97一区二区国产好的精华液 | 天天色亚洲 | 午夜天堂精品久久久久 | www四虎com | 亚洲国产wwwccc36天堂 | 麻豆视频免费在线 | 一区二区三区视频免费 | 成人午夜视频在线播放 | 精品国产第一国产综合精品 | 日韩网站在线观看 | 国精产品一品二品国精品69xx | 在线看色网站 | 国产欧美日韩精品在线 | 精品亚洲一区二区三区在线播放 | 久久成人免费视频 | 国产a国产片国产 | 99网站| 日韩av无码社区一区二区三区 | aⅴ色国产 欧美 | 郑艳丽三级 | 男女无遮挡激情视频 | wwwav免费| 色亚洲天堂| 黄色小视频在线免费看 | 香港三级午夜理伦三级 | 新婚夜第一次深深挺进 | 欧美aaaaa | 久久精品aⅴ无码中文字字幕 | 国内精品人妻无码久久久影院导航 | 国产精品久久久久久久久久久久久久久久久 | 中国黄色一级毛片 | 爱情岛aqdlt国产论坛 | 日韩一级黄色大片 | 超碰人人擦 | 女人脱精光让男人躁爽爽视频 | 欧美射射射 | 免费福利在线观看 | zzjizzji亚洲日本少妇 | 亚洲午夜福利在线观看 | 在线看的av网站 | 国产成人综合色在线观看网站 | 国产av熟女一区二区三区 | 午夜亚洲国产理论片一二三四 | 亚洲国产综合精品2020 | 国产不卡一 | 爱爱综合| 51一区二区三区 | 内射无码专区久久亚洲 | 黄瓜视频成人 | 午夜熟女毛片蜜桃传媒 | 欧美黄在线观看 | 折磨小男生性器羞耻的故事 | 日韩在线观看视频一区二区三区 | 国产精品成人一区二区三区 | 一区视频在线 | 超碰最新在线 | 真人抽搐一进一出gif | 夜夜躁狠狠躁日日躁aab苏桃 | 色偷偷网 | 亚洲一区二区三区播放 | 亚洲乱码精品 | 亚州男人天堂 | 好吊视频一区二区三区四区 | 久久人人爽人人爽人人片av不 | 久久国产精品波多野结衣av | 麻豆一区二区三区 | 日本午夜三级视频 | 二级大黄大片高清在线视频 | 青青草视频偷拍 | 99热在线看 | 成人特级毛片 | 国产午夜精品久久久久久久久久 | 午夜影皖精品av在线播放 | 免费看片在线观看www | 国产女人精品视频国产灰线 | 亚洲爱爱网 | 亚洲精品国产精品国自产观看 | 欧美三日本三级少妇99 | 婷婷五月六月激情综合色中文字幕 | 免费日本黄色片 | 麻豆国产丝袜白领秘书在线观看 | a级特黄一级一大片多人 | caoporn国产免费人人 | 亚洲香蕉精品 | 日韩第2页| 国产精品久久久久久妇女6080 | 丁香婷婷综合激情五月色 | 狠狠狠色丁香婷婷综合久久五月 | 亚洲欧美日韩精品永久在线 | 成年网站在线播放 | 性欧美一级 | 中国国语毛片免费观看视频 | av在线www| 国外精品jvid在线观看 | 亚洲欧洲一区二区三区四区 | 91大神小宝寻花在线观看 | 91精品一区二区三区四区 | 亚洲一区二区av在线观看 | 影音先锋美女 | 丰满妇女毛茸茸刮毛 | 99re国产 | 欧美久久综合 | 精品免费国产一区二区三区四区 | 成在人线av无码免观看麻豆 | 日本一级片在线播放 | 欧美精品久久天天躁 | 日韩av免费网站 | 午夜理论片yy44880影院 | 婷婷深爱网 | 久久久夜色精品 | 国产在线视频不卡 | 极品少妇xxxx精品少妇偷拍 | 极品美妇后花庭翘臀娇吟小说 | 国产69精品久久久久久野外 | 一本久久精品一区二区 | 黄色网页免费在线观看 | 中国极品少妇xxxx做受 | 欧美videos另类极品 | 日韩精品无玛区免费专区又长又大 | 91av片| 秘密爱大尺度做爰呻吟 | 国产精品久久久久久久久久蜜臀 | 小荡货奶真大水多好紧视频 | 国产精品日韩一区二区三区 | 99精品视频在线免费观看 | 久久亚洲精精品中文字幕早川悠里 | 无翼乌口工全彩无遮挡h全彩 | 国产精品偷伦免费观看视频 | 久久99精品久久久久久不卡 | 国产91精品一区二区绿帽 | 久久www成人_看片免费不卡 | 亚洲人ⅴsaⅴ国产精品 | 成人性色生活片 | 欧美一级做一级爱a做片性 欧美一极片 | 国产精品毛片va一区二区三区 | 日本一级xxxx | 成年女人a毛片免费视频 | 国产一区二区三区四区五区 | wwwxxx在线观看| 亚洲欧美一二三 | 91精品国产91 | 日本一区二区视频在线 | 九九久久综合 | 香蕉视频性 | 亚洲色婷婷久久精品av蜜桃久久 | 午夜激情在线免费观看 | 成人一区二区毛片 | 欧美黑人狂躁日本寡妇 | 黄色成人av | 国产美女又黄又爽又色视频免费 | 国产激情久久久久久熟女老人av | 免费人成在线观看网站 | 欧美国产在线看 | 亚洲日本区 | 欧美在线日韩在线 | 国产中文字幕第一页 | 成人激情站 | 久色亚洲 | 人操人视频 | 咪咪成人网 | 日韩精品久久久久久久电影蜜臀 | 涩涩综合| 亚洲综合小说 | 国产视频麻豆 | 国产人成看黄久久久久久久久 | 热热av| 欧美特级黄色片 | 免费观看全黄做爰大片国产 | 国产情侣一区二区 | 中国极品少妇xxxxx小艳 | 五月婷婷丁香综合 | 国产在线拍揄自揄视精品按摩 | 成人免费在线观看 | 超碰天天干 | 国产中文字幕乱人伦在线观看 | 国产国拍亚洲精品av | 天天天天噜在线视频 | 欧美青草视频 | 国产精品入口免费视 | 婷婷国产视频 | 91蝌蚪视频在线 | 深夜视频在线免费观看 | 国产视频一区二区在线 | 国产精品成人久久 | 中国少妇做爰全过程毛片 | 成人性生交大片免费看vr | 日韩视频在线观看一区二区三区 | 精品少妇人妻av无码久久 | 18禁免费观看网站 | 黄色天堂av | a级免费视频 | 国产精品字幕 | 国产成人久久精品77777综合 | 国产乱人内谢69xxxx亚洲 | 丰满少妇又爽又紧又丰满在线观看 | 性xxxxx大片做受免费视 | 国产一二视频 | 美女xx网站 | 色悠悠在线视频 | 国产精品福利网 | 在线观看免费av网址 | 国产手机在线精品 | 91视频免费网址 | 久久精品中文字幕第一页 | 久久99精品久久久久久噜噜 | 亚洲春色在线观看 | 国产综合有码无码中文字幕 | 一二三区精品 | 国产同性女女互磨在线播放 | 在线无码va中文字幕无码 | 亚洲欧美激情精品一区二区 | 免费的黄色av | 久久久午夜爽爽一区二区三区三州 | 国产乱码精品一区二区三 | 久久久久久久久久久免费精品 | 亚洲色图吧 | 天堂一区 | 人人妻人人添人人爽日韩欧美 | 免费体验区试看120秒 | 丁香婷婷六月 | 黄色大片国产 | 亚洲国产精品无码久久久秋霞1 | 国产女人叫床高潮大片免费 | 国产男女做爰免费网站 | 正在播放木下凛凛xv99 | 精品无码国模私拍视频 | 97无码人妻福利免费公开在线视频 | 国产愉拍精品手机 | 18禁网站免费无遮挡无码中文 | 美女内射毛片在线看免费人动物 | 天天看片天天干 | 亚洲欧美日韩久久一区二区 | 成人免费看黄yyy456 | 成人51网站 | 激情成人av | 亚洲少妇网 | 亚洲精品1234| 激情视频一区二区三区 | 欧美香蕉视频 | 青青艹av| 女人高潮内射99精品 | 色婷婷狠狠久久综合五月 | 精品一卡2卡三卡4卡免费网站 | 国产精品夜夜春夜夜爽 | 久久久精品波多野结衣av | 北条麻妃在线一区二区韩世雅 | 巨肉超污巨黄h文小短文 | 欧美第三页 | 国产成人精品亚洲7777 | 欧美性猛交xxxxx按摩欧美 | 日本aa大片 | 日韩av免费在线播放 | 日日摸夜夜摸狠狠摸婷婷 | h片在线免费看 | 欧美大尺度做爰啪啪免费 | 美女国产在线 | 日韩精品在线观看中文字幕 | 激情网站在线 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 日韩人妻无码精品久久 | 丰满少妇人妻久久久久久 | 99香蕉视频| 亚洲免费不卡视频 | 国产综合社区 | 国产激情综合在线观看 | 美女视频黄免费 | 青青免费视频 | 天堂网av2018 | 国产传媒在线视频 | 狠狠躁夜夜躁人人爽天天天天97 | 狠狠做五月深爱婷婷 | 干日本少妇首页 | 日本欧美成人 | 欧美乱码精品一区二区三区 | 中文字幕日产 | 香蕉在线播放 | 一区二区三区国产亚洲网站 | 日本中文字幕网站 | 日韩在线视频免费 | 无码ol丝袜高跟秘书在线观看 | 国产二级一片内射视频播放 | 1024成人网色www | 色婷婷香蕉 | 琪琪在线视频 | 婷婷精品国产欧美精品亚洲人人爽 | 日日摸天天爽天天爽视频 | 88国产精品视频一区二区三区 | 国产精品一区在线播放 | 黑丝一区二区三区 | 亚洲裸体大白屁股xxx | 国产成人一区二区三区别 | 每日更新av| 国产手机在线 | 一本无码久本草在线中文字幕dvd | 黄色小视频免费 | 吞精囗交系列av | 日韩第一页在线 | 天堂av免费观看 | 网站av| 高h猛烈做哭你尿进去了网站 | 国产农村老太xxxxhdxx | 男人边吃奶边做好爽免费视频 | 91国偷自产一区二区开放时间 | 在线视频97| 日本猛少妇色xxxxx猛叫 | 亚洲国产aⅴ成人精品无吗 亚洲国产aaa | 影音先锋男人站 | 强行糟蹋人妻hd中文字 | 黄色成人小视频 | 日韩av三级在线观看 | yy1111111少妇影院免费 | av大片在线免费观看 | 国产亚洲欧美一区二区 | 99热国| 2023亚洲精品国偷拍自产在线 | 无码视频一区二区三区在线观看 | 男女啪啪做爰高潮无遮挡 | 天天天色综合a | av不卡中文字幕 | 新婚若妻侵犯中文字幕 | 中文字幕免费高清在线观看 | 欧美色欧美亚洲高清在线观看 | 日韩中文字幕视频 | 色肉色伦交av色肉色伦 | 一本色道a无线码一区v | 久久久五月天 | 1000部啪啪未满十八勿入 | 中文字幕人妻熟女在线 | 日韩免费视频一区 | 色视频免费在线观看 | 国产人澡人澡澡澡人碰视 | av网站的免费观看 | 网色网站 | 久久精品国产一区二区三区 | 久久国产色av免费观看 | 亚洲 制服 丝袜 无码 | 成人美女黄网站色大免费的88 | 色哟哟视频在线观看 | 色婷婷导航 | 五姑娘影院在线观看免费 | 少妇私密会所按摩到高潮呻吟 | 国产欧美一区二区精品97 | 大陆日韩欧美 | 野花社区在线观看视频 | www.youjizz.com偷拍 | 91大神小宝寻花在线观看 | 天天插天天透 | 久热超碰 | 山东熟女啪啪哦哦叫 | 日本韩国免费观看 | 亚洲国色天香卡2卡3卡4 | 日韩欧美精品 | 亚洲精品无码不卡在线播he | 一区二区小视频 | 少妇人妻真实偷人精品视频 | 国内精品视频一区二区三区 | 国产在线观看你懂的 | 丁香五月缴情综合网 | 91pro国产福利网站www | 国产中文字幕乱人伦在线观看 | 久久精品中文闷骚内射 | 国语自产偷拍精品视频偷拍 | 久久一区国产 | 天堂av在线免费观看 | 亚洲国产欧美在线 | 狠狠综合久久久久综合网 | 波多野结衣一级 | 国产精品99久 | 色黄视频网站 | 9i看片成人免费 | 久久综合视频网 | 男人一边吃奶一边做爰网站 | 区一区二区三 | 国产免费丝袜调教视频 | 黄色免费小视频 | 99精品人妻无码专区在线视频区 | 91国产在线免费观看 | 欧美精品第一页 | 中文字幕一区二区av | 欧美肥婆性猛交xxxⅹ | jizz视频在线观看 | 国产黑丝啪啪 | 99自拍偷拍 | 成人免费看吃奶视频网站 | 国产精品99久久久久久白浆小说 | 九九九九精品九九九九 | 欧美一级淫片免费视频黄 | 邻居少妇张开腿让我爽了在线观看 | 中国videosex高潮hd | 2一3sex性hd| 精品国产综合区久久久久久 | 中文字幕永久区乱码六区 | 天天干影院 | 亚洲另类伦春色综合妖色成人网 | 少妇高潮毛片高清免费播放 | 久草蜜桃 | 欧美性猛交xxx乱大交3蜜桃 | 久久av无码精品人妻系列试探 | 精品国产乱码一区 | 91视频 -- 69xx | 人人妻一区二区三区 | av无码不卡一区二区三区 | 久久久6精品成人午夜51777 | 亚洲欧洲美洲无码精品va | 国产第69页 | 国产成人综合欧美精品久久 | 在线成年人视频 | 粉嫩av一区二区三区四区在线观看 | 91久久国产露脸精品 | www.在线观看av | 蜜臀av性久久久久蜜臀aⅴ | 最新国产视频 | 国产网址在线观看 | 日日躁狠狠躁夜夜躁av中文字幕 | 美女扣逼喷水视频 | 欧美三日本三级少妇99印度 | 亚洲综合精品成人 | 久久欲| 国产午夜av秒播在线观看 | 九九99九九精彩46 | 国产精品伦视频看免费三 | 亚洲乱码一区二区三区三上悠亚 | 偷拍中年夫妇激情嗷嗷叫 | 国产一区二区不卡老阿姨 | 久久zyz资源站无码中文动漫 | 天堂资源wwwav啪啪 | 亚洲国产av高清无码 | 午夜小视频在线播放 | 成人亚洲综合av天堂 | 国产绳艺sm调教室论坛 | 麻豆视频在线观看免费软件 | 免费观看成人毛片a片 | 国产高潮流白浆视频 | 亚洲三级色 | 欧美三根一起进三p | 337人体做爰大胆视频 | 国产欧精精久久久久久久 | 国产美女诱惑 | 国产色网址 | 在线视频啪 | 成年人色网站 | 欧美性猛交乱大交 | 色婷婷av一区二区三区软件 | 巨粗进入警花哭喊求饶在线观看 | 国产精品嫩草影院com | 91久久精品国产91久久性色tv | 亚洲 另类 春色 国产 | 一级录像免费录像性高湖 | 欧美午夜性春猛交xxxx明星 | 好大好硬好爽aaaaa视频 | mm131美女大尺度私密照尤果 | 亚洲人成人网站色www | 国产高清成人久久 | 亚洲午夜性猛春交xxxx | 亚洲天堂色2017 | 污视频在线观看免费网站 | 成年人在线视频网站 | 成人无码网www在线观看 | 欧美国产精品一区二区 | 国产精品毛片视频 | 婷婷影院在线观看 | 亚洲国产一区二区a毛片 | 激情久久网站 | 探花国产 | 国产熟人av一二三区 | 国产一级美女 | 免费久久一级欧美特大黄 | 一本a道v久大 | 巨胸喷奶水www久久久免费动漫 | 久久精品免费播放 | 日韩欧美一区天天躁噜噜 | 天天综合天天添夜夜添狠狠添 | 九色网战 | 特级免费毛片 | 欧美内射rape视频 | av在线看片| 国产精品国产三级国产潘金莲 | 免费萌白酱国产一区二区三区 | 五月婷婷激情网 | 国产三级欧美三级日产三级99 | 欧美激情免费在线 | 美女av网| 欧美福利片在线观看 | 6080理伦片午夜少妇 | 亚洲熟妇色自偷自拍另类 | 91一区二区国产精华液 | 欧美性在线视频 | 婷婷综合六月 | 国产黄色美女视频 | 欧美成人日韩 | 久久综合第一页 | 狠狠97 | 免费一级做a爰片久久毛片潮 | 亚洲五十路 | 午夜在线免费观看视频 | 一本大道无码日韩精品影视_ | 成熟丰满熟妇高潮xxxxx视频 | 人妻少妇精品无码专区二区 | 少妇人妻无码专区在线视频 | 亚洲日本综合 | 人人91| 欧美福利视频 | 国产成人无码aa片免费看 | 综合久色| 亚洲最大成人综合网720p | 久久亚洲精品国产亚洲老地址 | 青青视频免费在线观看 | 久久亚洲国产成人精品性色 | 青青草视频免费观看 | 久久人人干 | 午夜毛片在线 | 日韩av在线播放不卡 | 日韩国产高清一区二区 | 又湿又紧又大又爽a视频国产 | 国产婷婷久久 | 免费观看a级片 | 欧美性黑人极品hd | 国产精品免费观看久久 | 潮喷失禁大喷水无码 | 手机av在线 | 婷婷开心激情综合五月天 | 99re在线观看 | 国自产拍偷拍福利精品免费一 | 国产伦孑沙发午休精品 | 中国一级簧色带免费看 | 国模无码视频一区二区三区 | 亚洲精品第一区二区三区 | 精品无码成人久久久久久 | 中文字幕第80页 | 国产色婷婷精品综合在线 | 荡女精品导航 | 在线一区二区三区在线一区 | 国产精品www色诱视频 | 黄色免费成人 | 在线观看色网 | 91最新国产| 日本妞一区 | 国产成人免费xxxxxxxx | 久久久久无码精品国产h动漫 | 欧美一级淫片免费视频欧美辣图 | 丰满大肥婆肥奶大屁股 | 91久久精品国产91久久 | 波多野结衣激情视频 | 精品亚洲一区二区三区四区五区 | 国产男女爽爽爽免费视频 | 国产精品国产精品国产专区不卡 | 亚洲三级黄| 国产成人精品无码免费看夜聊软件 | 日韩成人久久 | 国产成人亚洲综合无码 | 亚洲欧美视频一区二区 | 中文字幕免费在线观看 | 婷婷综合在线 | 天摸夜夜添久久精品亚洲人成 | 精品久久久久久无码专区 | 黄色a级片视频 | 在线少妇 | 一区二区久久精品66国产精品 | 狠狠色丁香九九婷婷综合五月 | 亚洲欧美日韩国产成人一区 | 天天操天 | 麻豆一区二区三区精品视频 | av老司机在线 | 九色丨9lpony丨大学生 | 92看看福利1000集合集免费 | 免费看a| 国产精品成人va在线播放 | 欧美天堂网站 | 黑人巨茎大战俄罗斯美女 | 久久99热人妻偷产国产 | 欧美在线看 | 丰满老熟女毛片 | 日韩精品在线观 | 黑人狂躁日本妞一区二区三区 | 邻居少妇与水电工啪啪 | 夜夜爽日日澡人人添 | 三级国产网站 | 国内精品久久久久影院优 | 免费av地址 | 无码人妻视频一区二区三区 | 韩国边摸边做呻吟激情 | jizzjizz亚洲| 日韩熟女精品一区二区三区 | 麻豆视频在线观看免费网站 | 欧美在线免费看 | 色狠狠综合 | 97干干| 日韩中文字幕在线一区二区三区 | 好吊操视频 |