直接插入排序_第1頁
直接插入排序_第2頁
直接插入排序_第3頁
直接插入排序_第4頁
直接插入排序_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

直接插入排序第一頁,共18頁。教學(xué)內(nèi)容:

1、排序的基本概念

2、直接插入排序算法的基本思想

3、直接插入排序算法實現(xiàn)

4、直接插入排序算法性能分析教學(xué)重點:直接插入排序算法思想

教學(xué)難點:算法實現(xiàn)及性能分析

教學(xué)過程

第二頁,共18頁。第三頁,共18頁。學(xué)號姓名學(xué)習(xí)成績思想政治總分獎學(xué)金等次1008XXX2622929111005XXX2502927921003XXX2492827721002XXX2482827621006XXX2432827131007XXX2422726931001XXX2312725831004XXX211272383………………第四頁,共18頁。8.2.1排序概念排序無序數(shù)據(jù)有序數(shù)據(jù)排序算法主要有:直接插入排序、希爾排序、冒泡排序、快速排序、直接選擇排序、堆排序、歸并排序等。第五頁,共18頁。8.2.2直接插入排序基本思想212549361608i…n-1數(shù)組下標(biāo)數(shù)組R有序區(qū)無序區(qū)13無序區(qū)第1個元素……0…

i-1第六頁,共18頁。如何確定插入位置?關(guān)鍵問題第七頁,共18頁。212549360813排序過程臨時變量temp16543201…n-1下標(biāo)…第八頁,共18頁。流程圖(temp<R[j])&&(j>=0)開始temp=R[i]j=i-1循環(huán)判斷R[j+1]=R[j]j--R[j]=tempNY結(jié)束將無序區(qū)中的第一個元素放到臨時變量中j表示有序區(qū)中的最后一個元素的位置將當(dāng)前元素向后移動有序區(qū)中比較下一個找到插入位置后將第1個元素插入第九頁,共18頁。8.2.3算法實現(xiàn)for(i=1;i<n;i++){//插入所有元素Voidinsertsort(arrayTypeR[],intn){inti,j,temp;temp=R[i];//將待排序元素放入臨時變量while((temp<R[j])&&(j>=0)){R[j+1]=R[j];//元素向后移動j--;//向左繼續(xù)查找

}R[j+1]=temp;//將元素插入相應(yīng)位置

}j=i-1;//從R[i-1]開始向左查找}第十頁,共18頁。評價排序算法好壞的標(biāo)準(zhǔn):一、時間復(fù)雜度-算法執(zhí)行所需要的時間(比較次數(shù)和移動次數(shù))二、空間復(fù)雜度-算法執(zhí)行所需要的輔助空間個數(shù)主要考慮次要考慮第十一頁,共18頁。for(i=1;i<n;i++){Voidinsertsort(arrayTypeR[],intn){inti,j,temp;tempWhile(

){R[j+1]=R[j];j--;}R[j+1]=;}j=i-1;}=R[i];R[0]2R[0]temp(temp<R[j])&&(j>=0)R[0]<R[j]浪費時間第十二頁,共18頁。第一進(jìn)入循環(huán)之前,保存R[i]的值第二在while循環(huán)中“監(jiān)視”下標(biāo)是否越界。監(jiān)視哨使用R[0]的意義第十三頁,共18頁。8.2.3改進(jìn)后算法insertsort(R){inti,j;for(;i<n;i++){

j=i-1;

{R[j+1]=R[j];j--;}

;}}

R[0]=R[i];while(R[0]<R[j])R[j+1]=R[0]i=2第十四頁,共18頁。8.2.4性能分析212549361608131、理想情況第十五頁,共18頁。2、最壞情況21254

溫馨提示

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

評論

0/150

提交評論