1. 程式人生 > >演算法實驗一 (選擇、氣泡排序)

演算法實驗一 (選擇、氣泡排序)

實驗一  演算法設計基礎

一.實驗目的

理解蠻力法的思想及程式的執行過程;

理解遞推演算法的思想;

能較熟練地編寫列舉、遞推程式,對給定的問題能設計出相應演算法予以解決。

二.實驗基本步驟

1. 選定實驗題目,仔細閱讀實驗要求,設計好輸入輸出,按照分治法的思想構思演算法,選取合適的儲存結構實現應用的操作。

2. 設計的結果應在Visual C++ 實驗環境下實現並進行除錯。(也可使用JAVA程式設計)

3. 實驗要有詳細的測試記錄,包括各種可能的測試資料。

  • 實驗內容
  1. 程式設計求和:s=a+aa+aaa+aaaa+ „„+aaaa„aaa(n個),其中a為1~9中的一個數字。 提示:若第一項為a , 以後每一項由前一項乘以10加上a遞推得到,然後求和。
  2. 編寫程式求500 以內的勾股弦數,即滿足 c2=b2+a2的3個數,要求b>a。將所有符合要求的組合存入文字檔案中 ,每個組合佔一行。
  1. 在教材3.4節中兩個問題(最近對問題、凸包問題)中任意選擇一個問題,程式設計實現用蠻力法求解。 具體演算法參考教材40-42頁。

4. 程式設計實現教材3.2小節排序問題中的兩個排序演算法(選擇排序,氣泡排序),要求用函式實現排序演算法,主函式中呼叫。待排序資料用隨機數產生(這個過程建議也用一個函式實現。)