文本教程說明exday_第1頁(yè)
文本教程說明exday_第2頁(yè)
文本教程說明exday_第3頁(yè)
文本教程說明exday_第4頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、練習(xí)列表注: 理解級(jí)別 掌插級(jí)別 應(yīng)用級(jí)別1名稱描述級(jí)別 選擇排序0GG 數(shù)組排序,企業(yè)招聘程序員筆試時(shí)經(jīng)常考到,須熟練掌插 冒泡排序( )0GG 數(shù)組排序,企業(yè)招聘程序員筆試時(shí)經(jīng)??嫉?,須熟練掌插 冒泡排序( )0GG 數(shù)組排序,企業(yè)招聘程序員筆試時(shí)經(jīng)??嫉?,須熟練掌插 揑入排序( )0GG 數(shù)組排序,企業(yè)招聘程序員筆試時(shí)經(jīng)常考到,須熟練掌插 揑入排序( )0GG 數(shù)組排序,企業(yè)招聘程序員筆試時(shí)經(jīng)??嫉?,須熟練掌插 0GG 系統(tǒng)排序掌插 0GG 中排序的 6/ 方法 方法的遞歸調(diào)用理解遞歸調(diào)用的原理 目錄練習(xí) :選擇排序3練習(xí)描述3參考代碼4練習(xí) :冒泡排序E4練習(xí)描述4參考代碼5練習(xí) :冒

2、泡排序E6練習(xí)描述6參考代碼7運(yùn)行結(jié)果7練習(xí) :揑入排序 E8練習(xí)描述8參考代碼9練習(xí) :揑入排序 E10練習(xí)描述10參考代碼10練習(xí) :0GG 系統(tǒng)排序11練習(xí)描述11參考代碼12運(yùn)行結(jié)果12練習(xí) :方法的遞歸調(diào)用12練習(xí)描述12參考代碼132練習(xí) :選擇排序練習(xí)描述選擇排序原理:將數(shù)組中每個(gè)元素與第一個(gè)元素比較,如果這個(gè)元素小于第一個(gè)元素,則交換這兩個(gè)元素循環(huán)第 1 條規(guī)則,找出最小元素,放于第 1 個(gè)位置經(jīng)過 n-1 輪比較完成排序簡(jiǎn)單而言,每輪都找到最小的放到前面。舉例:8 , 2 , 3 , 7 , 1的排序過程如下所示:數(shù)組:第 1 輪:第 2 輪:第 3 輪:第 4 輪:第 5

3、輪:ary=8 , 2 , 3 , 7 , 1ary=1 | 8 , 3 , 7 , 2ary=1 , 2 | 8 , 7 , 3ary=1 , 2 , 3 | 8 , 7ary=1 , 2 , 3 , 7 | 8ary=1 , 2 , 3 , 7 | 8過程分析:代表第一個(gè)數(shù)據(jù)的位置代碼后部每一個(gè)數(shù)據(jù)的位置備注:3aryijaryiaryjaryiaryji交換j第 1 輪8|2,3,7,10182true822|8,3,7,10223false-2|8,3,7,10327false-2|8,3,7,10421true211,8|3,7,2第 2 輪1,8|3,7,21283true831,

4、3|8,7,21337false-1,3|8,7,21432true321,2,8|7,3第 3 輪1,2,8|7,32387true871,2,7|8,32473true731,2,3,8|7第 4 輪1,2,3,8|73487true871,2,3,7|8第 5 輪1,2,3,7,8|4-8-i 的范圍是:j 的范圍是:0ary.length - 1i+1 ary.length交換步驟(aryi a ryj)的代碼如下:if(aryiaryj)temp = aryi; aryi=aryj; aryj=temp;參考代碼練習(xí) :冒泡排序E 練習(xí)描述冒泡排序原理:比較相鄰的元素,將小的放到前面

5、。4冒泡排序舉例:8 , 2 , 3 , 7 , 1的排序過程如下所示:ary=8,2,3,7,1ary=2,8,3,7,1ary=2,3,8,7,1ary=2,3,7,8,1ary=2,3,7,1|8ary=2,3,7,1|8ary=2,3,7,1|8ary=2,3,1|7,8ary=2,3,1|7,8ary=2,1|3,7,8ary=1,2,3,7,8過程分析 O 代表次數(shù)P 代表比較位置備注:i 的取值范圍是:j 的取值范圍是:i = 0 j = 0 ary.length-1j+1)jj+1參考代碼5aryijj+1aryjaryj+1aryjaryj+1j交換j+18,2,3,7,10

6、0182true822,8,3,7,101283true832,3,8,7,102387true872,3,7,8,103481true812,3,7,1|810123false-2,3,7,1|811237false-2,3,7,1|812371true712,3,1|7,820123false-2,3,1|7,821231true312,1|3,7,830121true211,2,3,7,8練習(xí) :冒泡排序E 練習(xí)描述在程序開發(fā)過程中,常常使用輸出語句觀察程序執(zhí)行步驟、結(jié)果及調(diào)試程序。6參考代碼運(yùn)行結(jié)果7練習(xí) :排序E 練習(xí)描述排序原理:將數(shù)組分為兩部分 將后部分的第一個(gè)逐一與前部分每一個(gè)

7、元素比較,在合理位置揑入揑入排序算法效率要高于選擇排序和冒泡排序揑入排序舉例: 8 , 2 , 3 , 7 , 1的排序過程如下所示:第 步,假設(shè)第一個(gè)元素是已排序的第 步,用 和 b 之前的所有元素比較,并揑入取出 (ZKSV# )ZKSV 和 比,比 小,將 的位置賦值為大數(shù)(GX_A C# )因?yàn)橐训竭吔?,直接賦值(GX_A C# ) 和 排序完成第 步,用 和 b 之前的所有元素比較,并揑入取出 (ZKSV# )ZKSV 和 比,比 小, 的位置賦值給大數(shù)(GX_A C# )ZKSV 和 比,比 大,揑入 后面 (GX_A C# ) 、 、 排序完成第 步,用 和 b 之前的所以元素比

8、較,并揑入取出 (ZKSV# )ZKSV 和 比,比 小, 的位置賦值給大數(shù)(GX_A C# )a b ca b ca b ca b ca b ca b ca b ca b ca b c8ZKSV 和 比,比 大,揑入 后面(GX_A C# ) 、 、 、 排序完成第 步,用 和 b 之前的所以元素比較,并揑入取出 (ZKSV# )ZKSV 和 比,比 小, 的位置賦值給大數(shù) ZKSV 和 比,比 小, 的位置賦值給大數(shù) ZKSV 和 比,比 小, 的位置賦值給大數(shù) ZKSV 和 比,比 小, 的位置賦值給大數(shù) 到邊界,賦值(GX_A C# ) 、 、 、 、 排序完成a b ca b ca

9、b c a b c a b ca b c a bc過程分析 ZKSV 代表取出待揑入的元素O 代表后組待揑入元素的位置P 代表前組每個(gè)元素的位置備注:O 的取值范圍是:O#d GX_ RKTMZNP 的取值范圍是:P# O d $# P 偽代碼如下:ZKSV # AOC! OL ZKSVAPC aO P APC $AP CcKRYKaHXKGQ P!cZKSV $AP C! 移動(dòng) 參考代碼9aryitempjaryjtempj+1-8|8,3,7,112-1-2-j+12,8|3,7,12318true8-j+1-2,8|8,7,12302false-3-j+12,3,8|7,13728tru

10、e8-j+1-2,3,8|8,13713false-7-j+12,3,7,8|14138true8-j+1-2,3,7,8|84127true7-j+1-2,3,7,7|84113true3-j+1-2,3,3,7|84102true2-j+1-2,2,3,7|841-1-1-j+11,2,3,7,8|5-練習(xí) :排序E 練習(xí)描述揑入排序的經(jīng)典寫法。參考代碼10練習(xí) :0GG 系統(tǒng)排序練習(xí)描述JDK 提供的排序方法 Arrays.sort(ary)的效率要比之前寫的選擇排序、冒泡排序等效率高。本案例比較Ja va 提供的排序方法和揑入排序的效率。很明顯 Ja va 提供的排序方法效率高很多。注意:運(yùn)行結(jié)果為 0 表示不到 1 毫秒內(nèi)就完成了排序不要試圖在控制臺(tái)輸出數(shù)組元素,控制臺(tái)打印輸出不全11參考代碼運(yùn)行結(jié)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論