資源簡介 (共28張PPT)(義務教育版)五年級全一冊第19課冒泡排序齊體驗(2)學習目標激趣導入學習活動思考-討論學習探究課堂小結拓展-提升單元主題單元主題單元名稱 課名稱 核心內容第五單元 把數據排列有序 第 16 課 比較交換找最值 在一列數值中找出最大數,辨認其中的算法結構。第 17 課 選擇排序輕松做 選擇排序的基本步驟, 執行次數與選擇排序數據量的關系,算法驗證與實現。第 18 課 冒泡排序齊體驗(1) 冒泡排序的算法步驟。第19課 冒泡排序齊體驗(2) 冒泡排序的過程,執行次數與冒泡排序數據量的關系,算法驗證與實現。第 20 課 化大為小桶排序 桶排序的算法思想,桶的數量和范圍在排序過程中的作用。學習目標激趣導入【身高排序大挑戰之冒泡排序】同學們,你們知道冒泡排序嗎?你能使用冒泡排序的思想來組織排隊嗎?激趣導入【建構】上一課我們通過“排隊”活動,體驗了冒泡排序的算法步驟,下面通過對數據進行排序,分析冒泡排序的過程,并利用程序進行驗證與實現。 學習活動學習活動活動1:冒泡排序的過程分析一學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后利用冒泡排序算法,把最大數排列到最后(最右側),操作描述如下。學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后第 1 步:比較第一個數和第二個數,7 > 5,交換位置學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后第 2 步:比較第二個數和第三個數,7 < 9,不交換位置學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后第 3 步:比較第三個數和第四個數,9 > 3,交換位置學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后第 4 步:比較第四個數和第五個數,9 > 6,交換位置學習活動一、冒泡排序的過程分析【 任務 1 】:把最大數交換到最后第 5 步:比較第五個數和第六個數,9 > 8,交換位置學習活動一、冒泡排序的過程分析【 任務 2 】:按數值從小到大排序第二輪:返回最左邊,在第一個至第五個數中,通過比較、交換找到它們中的最大數,把它排到第五的位置。學習活動一、冒泡排序的過程分析【 任務 2 】:按數值從小到大排序第三輪:返回最左邊,在第一個至第四個數中,通過比較、交換找到它們中的最大數,把它排到第四的位置。學習活動一、冒泡排序的過程分析【 任務 2 】:按數值從小到大排序第四輪:返回最左邊,在第一個至第三個數中,通過比較、交換找到它們中的最大數,把它排到第三的位置。學習活動一、冒泡排序的過程分析【 任務 2 】:按數值從小到大排序第五輪:返回最左邊,比較第一個和第二個數,把較大的數排到第二的位置。學習活動活動2:流程圖描述冒泡排序算法二學習探究二、流程圖描述冒泡排序算法學習活動活動3:驗證冒泡排序的算法三學習活動三、驗證冒泡排序的算法下面通過觀察、運行冒泡排序的程序,體會算法的實現。第 1 步:打開“冒泡排序 .py”程序。第 2 步:觀察、運行這個程序,體驗冒泡排序的算法執行過程。第 3 步:大致了解程序與算法的對應關系。第 4 步:嘗試修改程序中的排序數據,再運行程序,觀察變化。學習活動三、驗證冒泡排序的算法def bubble_sort(num_list):n = len(num_list)for i in range(n):for j in range(0, n - i - 1):if num_list[j] > num_list[j + 1]:num_list[j], num_list[j + 1] = num_list[j + 1], num_list[j]return num_list學習活動三、驗證冒泡排序的算法if __name__ == "__main__":numbers = [7, 5, 9, 3, 6, 8]sorted_numbers = bubble_sort(numbers)print("排序后的數組:", sorted_numbers)課堂小結2流程圖描述冒泡排序算法3驗證冒泡排序的算法1冒泡排序的過程分析把最大數交換到最后按數值從小到大排序拓展-提升【“報數”排序游戲】在 10 張卡片上分別寫下一個 50 以內的自然數,隨機分發給 10 位同學,然后選一位同學出來從 1 開始報數。當報的數與某張卡片上的數相同時,該同學就手持卡片站出來。繼續報數,直到 50 為止,手持卡片的同學按先后順序站成一排,這時發現,這 10 個數已經按順序排列。用計算機解決排序問題時,也可以用以上“報數”的方法。計算機按順序數數,當數到的數與參與排序的某個數相同時,這個數就會被加入已排序數的隊列中。https://www.21cnjy.com/recruitment/home/fine 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫