資源簡介 (共30張PPT)魚吐泡泡粵教版選擇性必修一——冒泡排序回顧:認識排序排序是把一個任意序列的數據元素排列成按照某關鍵字的一個有序序列的過程游戲:探究人如何實現排序四位同學,隨意排好順序,從第一位同學開始往后排序,每位同學只能和后面一位同學交換位置,最終按學號從小到大的順序排列。如何一步步實現排序什么時候結束排序游戲:探究人如何實現排序相鄰比較逆序交換VS冒泡排序多輪排序數列有序核心步驟魚吐泡泡冒泡排序過程就像魚在水里冒泡的過程,小泡泡在下面,大泡泡在上面2591353291魚吐泡泡冒泡排序是交換排序算法。依次進行大小比較來交換相鄰兩個逆序數據元素,冒泡排序中每一輪會確定一個數據的位置,逐步將待排序列變成有序序列。任務一:人工進行學號的冒泡排序在學習單上嘗試人工解決排序問題,得到答案時間:3分鐘35268排序過程初始 6 3 8 5 2第1遍第2遍第3遍第4遍3 5 2 6 83 2 5 6 83 6 5 2 82 3 5 6 8相鄰元素比較、逆序交換多輪排序從第一個元素到最后一個元素冒泡排序基本思想初始 6 3 8 5 2第1遍第2遍第3遍第4遍1.假設有n個待排序元素,從第一個元素開始,相鄰兩個元素進行大小比較,根據結果交換位置,第一輪排序結束后最大的元素會移動到末尾。2.按照上述方法進行第二輪排序,第二大的元素會移動到倒數第二個位置。3. 經過n-1輪排序后,整個序列就是一個有序序列3 6 5 2 83 5 2 6 83 2 5 6 82 3 5 6 8冒泡排序如果待排序的數據量達到上萬、上百萬,甚至更大,如何快速地利用冒泡排序來解決問題人工排序電腦排序冒泡排序算法+計算機冒泡排序算法分析相鄰元素比較、逆序交換從第一個元素到最后一個元素多輪排序分支結構循環結構循環結構算法:循環列舉第一個元素到最后一個元素:循環進行下列步驟:直到所有元素有序排列,程序結束如果相鄰兩個元素滿足大小條件:交換相鄰兩個逆序元素的位置流程圖開始r[0]>r[1]r[0]和r[1]交換位置YNj=j+1j=0r[3]>r[4]r[3]和r[4]交換位置YN·····開始j=0jr[j]和r[j+1]交換位置Yj=j+1Yr[j]>r[j+1]N結束N結束流程圖開始r[j]>r[j+1]i=0r[j]和r[j+1]交換位置YNj=j+1jj=0Yi=1·····開始結束r[j]>r[j+1]i=0r[j]和r[j+1]交換位置YNj=j+1ijj=0YYi=i+1NNN流程圖開始結束r[j]>r[j+1]i=0r[j]和r[j+1]交換位置YNj=j+1ijj=0YYi=i+1NN多輪排序每一輪排序相鄰比較、逆序交換任務二:學號冒泡排序的代碼實現與優化基礎任務:打開學號冒泡排序程序框架,完善核心部分選做的進階任務:自學拓展資料,完善學號冒泡排序優化代碼的核心部分時間:6分鐘任務二:學號冒泡排序的代碼實現與優化基礎任務代碼進階任務代碼冒泡排序解決問題的一般步驟分析問題設計算法確定排序對象確定交換條件排序結束條件循環與分支結構程序實現運行程序編寫代碼得到有序序列任務二結合學習單上的問題二,完成基礎任務,選做進階任務小組討論任務二:考試分數排序的代碼實現與優化基礎任務:打開學號冒泡排序程序框架,完成考試分數排序的代碼實現選做的進階任務:自學拓展資料,完善考試分數冒泡排序優化代碼的核心部分時間:6分鐘程序對比冒泡排序算法優化一輪排序后沒有發生交換則結束程序上一輪最后發生交換的位置之前不再發生交換則結束程序冒泡排序進一步優化冒泡排序優化任務三:考試分數排名的代碼優化要求:結合剛才的分析,完成程序再優化時間:3分鐘任務三:考試分數排名的代碼優化冒泡排序算法優化小結冒泡排序優化方法一:一輪排序后沒有發生交換則結束冒泡排序優化方法二:上一輪發生交換的位置之前不再發生交換則結束交流與評價現在整理自己之前編寫的程序放到共享區域,在共享區域查看他人編寫的冒泡排序程序并相互交流討論,學習他人作品的優點。填寫學習單上的自評與互評,進行反思總結。課堂總結相鄰元素兩兩比較、逆序交換、多輪排序每輪排序過程中,值小的元素向前移動,值大的元素向后移動冒泡排序算法:雙層循環與分支的嵌套冒泡算法的課后作業完成學習單上的課后作業課堂效果調查https://www./vm/Y0nv3aQ.aspx#謝 謝 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫