国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

趣味教學(xué)法在冒泡排序算法中的教學(xué)設(shè)計

2018-07-31 00:00李冬梅
科教導(dǎo)刊·電子版 2018年15期
關(guān)鍵詞:多媒體手段口訣教學(xué)方法

李冬梅

摘 要 在程序設(shè)計語言中,排序算法是要求學(xué)生重點(diǎn)掌握的知識點(diǎn)。傳統(tǒng)的教學(xué)手段往往效果欠佳。本文以冒泡排序?yàn)槔?,結(jié)合口訣教學(xué),綜合運(yùn)用了情景導(dǎo)入,動畫演示等多媒體手段,采用啟發(fā)引導(dǎo)、分組討論等方式很好講授了冒泡排序的原理及代碼實(shí)現(xiàn)。實(shí)踐證明通過這種教學(xué)手段可以有效提高教學(xué)質(zhì)量。

關(guān)鍵詞 冒泡排序 口訣 多媒體手段 教學(xué)方法

中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A

0引言

排序是計算機(jī)中使用頻率很高又相對重要的算法,在實(shí)際生活中,很多應(yīng)用都會用到排序,因此人們研究了很多排序算法。冒泡排序因?yàn)樵砗唵味挥糜谥v解排序方法的首選算法。但冒泡排序過程繁瑣,如果依舊沿用傳統(tǒng)的以教師講授為主的教學(xué)手段,很難激發(fā)學(xué)生的學(xué)習(xí)熱情,學(xué)生在聽了枯燥無味的講解后,也很難寫出對應(yīng)的C程序。因此,為了取得更好的教學(xué)效果,在講授排序算法的過程中,可以把豐富多樣的教學(xué)手段引入課程。本文以冒泡排序的講授過程為例探討更適合學(xué)生的教學(xué)手段。

1教學(xué)過程設(shè)計

1.1從玩轉(zhuǎn)撲克牌引入新知識

上課前,按照班級人數(shù),每5個同學(xué)分為一組,給每位同學(xué)隨機(jī)發(fā)放一張撲克牌,要求每一組同學(xué)把自己手里的撲克牌按照從小到大的順序進(jìn)行排列。讓學(xué)生以組為單位展開討論,在幾分鐘的討論結(jié)束之后,隨機(jī)挑選幾組對結(jié)果進(jìn)行評判。通過這種方式,不僅活躍了上課氣氛,調(diào)動了學(xué)生學(xué)習(xí)的熱情,又能引起大家對接下來要介紹的排序算法的重視。

1.2動態(tài)演示冒泡排序

為了加深學(xué)生對冒泡排序的理解,本文以5個卡通人物為例,通過flash動畫演示對這5個卡通人物按照個子高低進(jìn)行排序來講解冒泡排序。如圖1所示。通過動作按鈕的控制,學(xué)生可以直觀看到5個卡通人物的排序共需進(jìn)行4趟。每趟排序過程中的特點(diǎn)及每趟結(jié)束后的效果都可由學(xué)生進(jìn)行總結(jié),引導(dǎo)學(xué)生對冒泡排序原理的歸納。

1.3通過PPT動畫分解排序步驟

給出5個隨機(jī)數(shù)據(jù){91,76,89,21,6},要求把這5個數(shù)據(jù)進(jìn)行有序排列(如從小到大)。用PPT動畫分解每趟排序過程。

(1)第一趟排序:從前到后進(jìn)行遍歷,首先比較91和76,因?yàn)?1大于76,隨機(jī)將這2個數(shù)據(jù)的位置進(jìn)行交換。接下來比較91和89,因?yàn)槟嫘颍◤拇蟮叫。?,繼續(xù)交換兩者的位置。以此類推。在進(jìn)行4次比較之后,數(shù)據(jù)91移動到了最后一個位置。

(2)第二趟排序:對剩下的4個數(shù){76,89,21,6}進(jìn)行排序,按照相同的方法,第二趟排序結(jié)束將數(shù)值89移動到倒數(shù)第二個位置。

(3)第三趟排序:對剩余的3個數(shù){76,21,6}進(jìn)行排序,在2次比較之后,將數(shù)值76移動到倒數(shù)第三個位置。

(4)第四趟排序:對剩余的2個數(shù){21,6}進(jìn)行1次比較,將數(shù)值21移動到倒數(shù)第四個位置。

動畫演示完畢,引導(dǎo)學(xué)生總結(jié)排序過程的規(guī)律:(1)n個數(shù)據(jù)的排序需要進(jìn)行n-1趟;(2)每趟需要比較n-i次(i代表趟,從1開始)。

1.4口訣教學(xué)引出程序核心代碼

依據(jù)冒泡排序的原理分析,對n個數(shù)據(jù)按照正序進(jìn)行排序的口訣可歸納如下:排序進(jìn)行n-1趟,從前往后,兩兩比較,順序不對互換位置。

在講解時,指導(dǎo)學(xué)生寫出對應(yīng)的C代碼。

for(i=1;i

for(j=0;j

if(a[j]>a[j+1]) /*兩兩比較*/

{temp=a[j]; a[j]=a[j+1];a[j+1]=temp;} /*順序不對交換位置*/

以往的教學(xué)中,雖然學(xué)生理解了冒泡排序的原理,但依舊很難寫出對應(yīng)的C算法且容易出錯。這4句口訣高度歸納了冒泡排序的原理,簡單易懂,學(xué)生可以快速把每句口訣轉(zhuǎn)換為對應(yīng)的C代碼。

1.5算法改進(jìn)

以上代碼可以實(shí)現(xiàn)對n個數(shù)據(jù)的排列,但執(zhí)行效率并不高。教師在上課過程中可引導(dǎo)學(xué)生提出改進(jìn)意見。通過細(xì)心觀察可以發(fā)現(xiàn),對n個數(shù)據(jù)的排序不一定進(jìn)行n-1趟。因?yàn)樵趯?shí)際排序過程中,如果某趟結(jié)束后,數(shù)據(jù)已經(jīng)處于有序的狀態(tài),后續(xù)的各趟就沒有必要進(jìn)行下去。所以可以在算法中設(shè)置一個flag標(biāo)記,如果在排序過程中相鄰數(shù)據(jù)進(jìn)行了交換,就修改flag的值,否則flag保持不變。最后可根據(jù)flag值變化與否來判斷是否要進(jìn)入下一趟循環(huán)。

引導(dǎo)學(xué)生寫出改進(jìn)后的C代碼。

for(i=1;i

{ flag=0;

for(j=0;j

if(a[j]>a[j+1]) /*兩兩比較*/

{temp=a[j]; a[j]=a[j+1];a[j+1]=temp; flag=1;} /*順序不對交換位置*/

if(flag==0) break;

}

改進(jìn)后的冒泡排序執(zhí)行效率明顯提高,在數(shù)據(jù)序列基本有序的情況下,執(zhí)行的趟數(shù)明顯減少,大大提高了執(zhí)行速度。

2結(jié)束語

本文以冒泡排序?yàn)槔C合運(yùn)用情景教學(xué),flash動畫演示,并結(jié)合冒泡排序的口訣教學(xué)等多種教學(xué)手段,生動形象地向?qū)W生講授了冒泡排序的原理及代碼實(shí)現(xiàn)。很好的體現(xiàn)了以學(xué)生為本,提高學(xué)生綜合素質(zhì)的教育理念。

參考文獻(xiàn)

[1] 譚浩強(qiáng).C語言程序設(shè)計(第三版)[M].北京:清華大學(xué)出版社,2005:8.

[2] 趙轉(zhuǎn)莉,郭紅山.C語言中冒泡排序教學(xué)方法芻議[J].辦公自動化(綜合版), 2007(05).

[3] 楊朝霞.談計算機(jī)課程教學(xué)中詩化口訣的應(yīng)用[J].甘肅科技,2005,21(04).

[4] 周李涵,高鷺.雙向思維的教學(xué)方法在冒泡排序及其改進(jìn)算法中的教學(xué)設(shè)計[J].科技信息,2009(24).

猜你喜歡
多媒體手段口訣教學(xué)方法
口訣與加法
口訣中的規(guī)律
教學(xué)方法與知識類型的適宜
怎樣熟記口訣
巧用口訣求積商
高中政治教學(xué)中對多媒體手段的有效應(yīng)用
多媒體手段在高中政治教學(xué)中的運(yùn)用
我的教學(xué)方法
五莲县| 来安县| 长春市| 光山县| 遂宁市| 铅山县| 德惠市| 马山县| 扎赉特旗| 德令哈市| 金湖县| 宾川县| 鞍山市| 灌阳县| 仁怀市| 绥江县| 旬邑县| 石嘴山市| 河北省| 杂多县| 弥渡县| 屯昌县| 固始县| 睢宁县| 汤原县| 金塔县| 平顺县| 江门市| 涞水县| 璧山县| 翁牛特旗| 会泽县| 砀山县| 仁怀市| 霍城县| 焦作市| 夹江县| 和平县| 上思县| 利津县| 永修县|