1. 程式人生 > 其它 >20202316 2021-2022-1 《資料結構與面向物件程式設計》實驗七報告

20202316 2021-2022-1 《資料結構與面向物件程式設計》實驗七報告

20202316 2021-2022-1 《資料結構與面向物件程式設計》實驗七報告

課程:《程式設計與資料結構》
班級:2023
姓名: 饒坤
學號:20202316
實驗教師:王志強
實驗日期:2021年11月4日
必修/選修: 必修

一、實驗內容

1.定義一個Searching和Sorting類,並在類中實現linearSearch,SelectionSort方法,最後完成測試。要求不少於10個測試用例,提交測試用例設計情況(正常,異常,邊界,正序,逆序),用例資料中要包含自己學號的後四位提交執行結果圖。

2.重構你的程式碼把Sorting.java Searching.java放入 cn.edu.besti.cs2023.(姓名首字母+四位學號) 包中(例如:cn.edu.besti.cs1823.G2301)把測試程式碼放test包中重新編譯,執行程式碼,提交編譯,執行的截圖(IDEA,命令列兩種)

3.參考http://www.cnblogs.com/maybe2030/p/4715035.html ,學習各種查詢演算法並在Searching中補充查詢演算法並測試提交執行結果截圖

4.實現排序方法等(至少3個)測試實現的演算法(正常,異常,邊界)提交執行結果截圖(如果編寫多個排序演算法,即使其中三個排序程式有瑕疵,也可以酌情得滿分)

5.編寫Android程式對實現各種查詢與排序演算法進行測試提交執行結果截圖推送程式碼到碼雲(選做,額外加分)

二、實驗過程及結果

1.定義一個Searching和Sorting類,並在類中實現linearSearch,SelectionSort方法,最後完成測試。

要求不少於10個測試用例,提交測試用例設計情況(正常,異常,邊界,正序,逆序),用例資料中要包含自己學號的後四位提交執行結果圖。

2.重構你的程式碼把Sorting.java Searching.java放入 cn.edu.besti.cs2023.(姓名首字母+四位學號) 包中(例如:cn.edu.besti.cs1823.G2301)

把測試程式碼放test包中

重新編譯,執行程式碼,提交編譯,執行的截圖(IDEA,命令列兩種)

命令列截圖:

3.參考http://www.cnblogs.com/maybe2030/p/4715035.html ,學習各種查詢演算法並在Searching中補充查詢演算法並測試提交執行結果截圖

折半查詢

鏈地址查詢:

分塊

線性

斐波那契

二叉樹

測試執行

4.實現排序方法等(至少3個)

測試實現的演算法(正常,異常,邊界)

提交執行結果截圖(如果編寫多個排序演算法,即使其中三個排序程式有瑕疵,也可以酌情得滿分)

選擇排序

插入排序

氣泡排序

希爾排序

堆排序

二叉樹排序

執行截圖

5.編寫Android程式對實現各種查詢與排序演算法進行測試提交執行結果截圖推送程式碼到碼雲(選做,額外加分)

3. 實驗過程中遇到的問題和解決過程

- 問題1:不知道如何重構函式並放入包裡面
- 問題解決方案:我問了同學,從而成功重構並放入包裡面

-問題2:不知如何構造二叉樹。

-問題解決方案:我在網上查詢相關的資料和詢問同學求助同學幫助,從而編寫出了二叉樹排序查詢樹

實驗感悟

java的難度還是超出了我的想象,越學習越發現有許多的不會的知識點,還是得多看書,多敲程式碼。遇見不會得知識點得多花時間去弄明白他,實在不會可以求助老師和同學,直到把題目給弄明白為止,這樣才能真正學到知識。

## 參考資料

- [《Java程式設計與資料結構教程(第二版)》](https://book.douban.com/subject/26851579/)

- [《Java程式設計與資料結構教程(第二版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...