大學(xué)計(jì)算機(jī)基礎(chǔ)-基于計(jì)算思維(Windows 10+Office 2016)(第2版)課件 10.3.1冒泡排序_第1頁(yè)
大學(xué)計(jì)算機(jī)基礎(chǔ)-基于計(jì)算思維(Windows 10+Office 2016)(第2版)課件 10.3.1冒泡排序_第2頁(yè)
大學(xué)計(jì)算機(jī)基礎(chǔ)-基于計(jì)算思維(Windows 10+Office 2016)(第2版)課件 10.3.1冒泡排序_第3頁(yè)
大學(xué)計(jì)算機(jī)基礎(chǔ)-基于計(jì)算思維(Windows 10+Office 2016)(第2版)課件 10.3.1冒泡排序_第4頁(yè)
大學(xué)計(jì)算機(jī)基礎(chǔ)-基于計(jì)算思維(Windows 10+Office 2016)(第2版)課件 10.3.1冒泡排序_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

大學(xué)計(jì)算機(jī)基礎(chǔ)——基于計(jì)算思維(Windows10+Office2016)第10章算法思維與運(yùn)用10.3.1冒泡排序10.3排序算法基本排序算法冒泡排序冒泡排序選擇排序直接插入排序問(wèn)題3冒泡排序大學(xué)入學(xué)軍訓(xùn)時(shí)要求n人一列從低到高排列,現(xiàn)在已知n人的身高(無(wú)序),請(qǐng)按要求完成任務(wù)。1.問(wèn)題分析冒泡排序的過(guò)程類似水中冒氣泡的過(guò)程,將待排序的n個(gè)身高數(shù)據(jù)看作是垂直排列的重量不同的氣泡。根據(jù)重氣泡不能在輕氣泡上面的原則,從上往下掃描,比較相鄰數(shù)據(jù),如果它們是逆序的話就交換它們的位置,重復(fù)多次后,最大數(shù)據(jù)就“沉到”了最后位置,稱為第1趟掃描冒泡。問(wèn)題3冒泡排序1.問(wèn)題分析第2遍操作對(duì)剩余的數(shù)據(jù)進(jìn)行掃描冒泡,將第二大的數(shù)據(jù)沉下去。這樣一直做,經(jīng)過(guò)n-1趟以后,所有數(shù)據(jù)就排好序了。問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(1)設(shè)計(jì)輸入子程序input。先設(shè)計(jì)一個(gè)子程序來(lái)完成數(shù)據(jù)的輸入功能(名稱為input),要求生成n個(gè)150~190的隨機(jī)整數(shù)存儲(chǔ)到數(shù)組a[]中。數(shù)組名a作為“輸出”參數(shù),如圖所示為input的各接口參數(shù)問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(1)設(shè)計(jì)輸入子程序input。在子程序中要生成n個(gè)150~190的隨機(jī)整數(shù)存儲(chǔ)到a[]數(shù)組中,可設(shè)計(jì)一個(gè)循環(huán)結(jié)構(gòu)(設(shè)循環(huán)變量為i,從1遞增到n)由隨機(jī)函數(shù)構(gòu)建公式產(chǎn)生1個(gè)150~190的隨機(jī)整數(shù)存放到數(shù)組a[i]元素中問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(2)設(shè)計(jì)輸出子程序output。設(shè)計(jì)一個(gè)子程序來(lái)完成數(shù)據(jù)的輸出功能(名稱為output),要求將上述數(shù)組a[]中的所有數(shù)據(jù)輸出,數(shù)據(jù)間用空格分隔。在創(chuàng)建子程序output時(shí),要已知數(shù)組的大小n和數(shù)組名a,而且在output中都不會(huì)改變其值,所以n和a都作為“輸入?yún)?shù)”問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(2)設(shè)計(jì)輸出子程序output。在子程序output中要輸出a數(shù)組中所有元素,可設(shè)計(jì)一個(gè)循環(huán)結(jié)構(gòu)(設(shè)循環(huán)變量為i,從1遞增到n),在循環(huán)體內(nèi)按格式輸出數(shù)組元素a[i]。問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(3)設(shè)計(jì)main子圖main子圖的主要功能是:①輸入要排隊(duì)列人數(shù)n。②調(diào)用input子程序生成數(shù)組a,模擬待排人的身高數(shù)據(jù)。③調(diào)用output子程序顯示數(shù)組a(無(wú)序)。問(wèn)題3冒泡排序2.算法實(shí)現(xiàn)(3)設(shè)計(jì)main子圖右圖所示為該程序調(diào)試運(yùn)行中的一組數(shù)據(jù)(10個(gè))問(wèn)題3冒泡排序(4)設(shè)計(jì)冒泡子程序bubble表中列出了a數(shù)組有5個(gè)元素的冒泡排序過(guò)程。問(wèn)題3冒泡排序(4)設(shè)計(jì)冒泡子程序bubble從表中,我們要找出a數(shù)組有n個(gè)元素時(shí)冒泡排序的一般規(guī)律。問(wèn)題3冒泡排序(4)設(shè)計(jì)冒泡子程序bubble完成bubble子程序,實(shí)現(xiàn)步驟如下:①創(chuàng)建bubble子程序,其各參數(shù)如圖所示。問(wèn)題3冒泡排序(4)設(shè)計(jì)冒泡子程序bubble②在bubble子程序中首先構(gòu)建掃描冒泡趟數(shù)的循環(huán)i(1~n-1)。③然后在每趟冒泡i的循環(huán)體內(nèi)再構(gòu)建一個(gè)比較次數(shù)的循環(huán)j(從上往下掃描1~n-i)。④在內(nèi)循環(huán)j的循環(huán)體內(nèi),從上到下比較相鄰元素,若a[j]>a[j+1]則交換其中的內(nèi)容。問(wèn)題3冒泡排序(5)完善main子圖①調(diào)用bubble子程序,對(duì)數(shù)組a進(jìn)行冒泡排序。②調(diào)用output子程序

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論