20202326 實驗七 《查找與排序》實驗報告


# 20202326 2021-2022-1 《數據結構與面向對象程序設計》實驗七報告


課程:《程序設計與數據結構》
班級: 2023
姓名: 張修齊
學號:20202326
實驗教師:王志強
實驗日期:2021年11月12日
必修/選修: 必修

## 1.實驗內容

  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程序對實現各種查找與排序算法進行測試
    提交運行結果截
    推送代碼到碼雲(選做,額外加分)

## 2. 實驗過程及結果
 
相關程序碼雲地址:https://git.oschina.net/besti-cs/zxq20202326-javaprogramming     中的week7有關。
 
 
1.定義一個Searching和Sorting類,並在類中實現linearSearch,SelectionSort方法,最后完成測試

 

2.重構你的代碼

 

 

 

3. & 4.參考http://www.cnblogs.com/maybe2030/p/4715035.html ,學習各種查找算法並在Searching中補充查找算法並測試;實現排序方法等(至少3個)測試實現的算法(正常,異常,邊界)

插入查找:

 

二分查找:

 

 

 希爾排序:

 

順序查找:

 

 測試類:

 

 運行結果:

5.提交運行結果截圖推送代碼到碼雲(選做,額外加分)

 

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


- 問題1:測試類編寫時出現了“No tests found in XXX”。
- 問題1:解決方案:先找網上,網上不行就找老師,最后將測試類名字中的Test改成小寫test就行。

## 其他(感悟、思考等)


  排序和查找是遞進的,查找可以使排序中查找元素步驟大大減少運行時間,而不同排序方法的思想也同樣可以反應到排序中,比如二分查找的思想對二分排序的就有很類似的地方。

所以我們不要將兩者看作兩個單獨的個體,要結合起來看。


## 參考資料

-  [《Java和Andriod開發學習指南(第二版)人民郵電出版社》]

-  [《Java軟件結構與數據結構(第三版)清華大學出版社》]

-  https://www.cnblogs.com/maybe2030/p/4715035.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM