999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

任務(wù)驅(qū)動(dòng)法在遞歸算法教學(xué)設(shè)計(jì)中的應(yīng)用

2016-08-22 03:43:00楊平
關(guān)鍵詞:課堂教學(xué)

楊平

(韶關(guān)學(xué)院數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,廣東韶關(guān)512005)

任務(wù)驅(qū)動(dòng)法在遞歸算法教學(xué)設(shè)計(jì)中的應(yīng)用

楊平

(韶關(guān)學(xué)院數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,廣東韶關(guān)512005)

摘要:遞歸作為一種編程算法在程序設(shè)計(jì)中廣泛應(yīng)用,是編程思維的重點(diǎn)內(nèi)容之一.以任務(wù)驅(qū)動(dòng)法在遞歸算法課堂教學(xué)中的應(yīng)用為例,設(shè)計(jì)趣味性任務(wù),由淺入深,激發(fā)學(xué)生的興趣,利用道具分解任務(wù)規(guī)模,促進(jìn)對(duì)問(wèn)題本質(zhì)的理解,旨在提高學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生的編程能力,提高教學(xué)質(zhì)量.

關(guān)鍵詞:遞歸算法;編程算法;課堂教學(xué);編程能力

遞歸作為一種編程算法在程序設(shè)計(jì)中廣泛應(yīng)用,是指函數(shù)在運(yùn)行的過(guò)程中又直接或間接地調(diào)用該函數(shù)本身[1-2].程序調(diào)用自身的編程技巧稱為遞歸,在函數(shù)中直接調(diào)用函數(shù)本身,稱為直接遞歸調(diào)用.在函數(shù)中調(diào)用其它函數(shù),其它函數(shù)又調(diào)用原函數(shù),這就構(gòu)成了函數(shù)自身的間接調(diào)用,稱為間接遞歸調(diào)用.

雖然用遞歸算法編寫(xiě)的程序結(jié)構(gòu)清晰存在著自調(diào)用過(guò)程,程序控制反復(fù)進(jìn)入其自身,使程序的分析設(shè)計(jì)有一定困難,致使很多初學(xué)者往往對(duì)遞歸迷惑不解,也在這上面花了不少的時(shí)間,卻收效甚微.本文以“任務(wù)驅(qū)動(dòng)法”來(lái)設(shè)計(jì)教學(xué)過(guò)程的內(nèi)容,首先從引人入勝的故事入手展開(kāi)教學(xué),自然簡(jiǎn)單地引入遞歸概念,讓學(xué)生對(duì)知識(shí)點(diǎn)的認(rèn)識(shí)從感性到理性[3].再?gòu)膶W(xué)生的角度出發(fā)合理地設(shè)計(jì)出學(xué)生能接受的教學(xué)內(nèi)容與環(huán)節(jié),通過(guò)讓學(xué)生主動(dòng)分析遞歸算法經(jīng)典案例,結(jié)合教學(xué)道具促進(jìn)學(xué)生容易完成“教學(xué)任務(wù)”,從而達(dá)到培養(yǎng)學(xué)生主動(dòng)分析問(wèn)題、解決問(wèn)題的綜合能力.

1設(shè)計(jì)趣味性任務(wù),由淺入深,激發(fā)學(xué)生的興趣

課堂教學(xué)可以由一個(gè)古老的故事引入:從前有座山,山上有個(gè)廟,廟里有個(gè)老和尚和小和尚,老和尚給小和尚講故事,講的是:從前有座山,山上有個(gè)廟,廟里有個(gè)老和尚和小和尚,老和尚給小和尚講故事,講的是:從前有……

這是一個(gè)典型的“遞歸”故事,可以無(wú)限次遞歸下去.可以把這個(gè)故事比喻成遞歸調(diào)用,但在程序設(shè)計(jì)中,程序不可無(wú)限地遞歸下去,必須有遞歸結(jié)束條件,而且每次遞歸都應(yīng)該向結(jié)束條件邁進(jìn),直到滿足結(jié)束條件而停止遞歸調(diào)用,同時(shí)適時(shí)宜地給出遞歸調(diào)用的定義.

遞歸調(diào)用的編程應(yīng)用有一個(gè)最著名的問(wèn)題:相傳在很久以前,在中東地區(qū)的一個(gè)寺廟里,幾個(gè)和尚整天不停地移動(dòng)著盤(pán)子,日復(fù)一日,年復(fù)一年,移盤(pán)不止,移動(dòng)盤(pán)子的規(guī)則是這樣的:事先固定三根針,假設(shè)分別為A針、B針、C針,A針上套有64個(gè)中間帶孔的盤(pán)子,盤(pán)子大小不等,大的在下,小的在上,要求把這64個(gè)盤(pán)子從A針移到C針,在移動(dòng)過(guò)程中可以借助于B針,每次只允許移動(dòng)一個(gè)盤(pán)子,且移動(dòng)過(guò)程中的每一步都必須保證在三根針上都是大盤(pán)在下、小盤(pán)在上.據(jù)說(shuō)當(dāng)所有64個(gè)盤(pán)子全部移完的那一天就是世界的末日,故漢諾塔問(wèn)題又被稱為“世界末日問(wèn)題”.

從給出這個(gè)著名的案例著手一步一步引導(dǎo)學(xué)生積極思考,從而自主找出解決問(wèn)題的方法,這樣的課堂的教學(xué)才能讓學(xué)生印象深刻,掌握遞歸本質(zhì).

2利用道具分解任務(wù)規(guī)模,促進(jìn)對(duì)問(wèn)題本質(zhì)的理解

課前簡(jiǎn)單制作出3個(gè)紙柱子與4個(gè)不同大小在空心紙盤(pán).首先給出一個(gè)最簡(jiǎn)單的情況,A針上只有一個(gè)盤(pán),讓一個(gè)同學(xué)動(dòng)手操作如何去完成案例任務(wù).當(dāng)然任何一個(gè)學(xué)生就能完成:直接把一個(gè)盤(pán)從A針移到C針.

其次給出A針上只有2個(gè)盤(pán),讓2個(gè)同學(xué)起來(lái)操作如何去完成任務(wù).可以適當(dāng)引導(dǎo)學(xué)生把任務(wù)分解成3步:(1)學(xué)生甲讓學(xué)生乙把A針上的一個(gè)盤(pán)從A針移到B針上.(2)學(xué)生甲直接把A針上剩下的一個(gè)盤(pán)子移到C針.(3)學(xué)生乙把B針上的一個(gè)盤(pán)從B針移到C針上.可以發(fā)現(xiàn)一共移動(dòng)了3=22-1次.

再給出A針只有3個(gè)盤(pán),讓3個(gè)同學(xué)起來(lái)操作如何去完成任務(wù).可以適當(dāng)引導(dǎo)學(xué)生把任務(wù)分解成3步:(1)學(xué)生甲讓學(xué)生乙、丙把A針上的2個(gè)盤(pán)從A針移到B針上(用上的方法移動(dòng)了3次).(2)學(xué)生甲直接把A針上剩下的一個(gè)盤(pán)子移到C針.(3)學(xué)生乙、丙把B針上的2個(gè)盤(pán)從B針移到C針上(用上的方法移動(dòng)了3次).可以發(fā)現(xiàn)一共移動(dòng)了3+1+3=7=23-1次.

圖1 初始狀態(tài) 

圖2 分解完成子問(wèn)題

圖3 分解完成單步移動(dòng)

圖4 分解完成整個(gè)問(wèn)題

依次給出A針上只有4個(gè)盤(pán)的情況,如圖1~4所示.

利用前面每次的操作結(jié)果,同學(xué)們很快可以完成給定的任務(wù),可以順其自然推理出:對(duì)于n個(gè)盤(pán)子需要移動(dòng)2n-1次,把64個(gè)盤(pán)子都移動(dòng)完畢約需1.8x1019次,假設(shè)每秒移動(dòng)一次,約需一萬(wàn)億年,不愧是世界末日問(wèn)題,地球壽命才100億年.目前,由于計(jì)算機(jī)運(yùn)算速度的限制,僅能找出問(wèn)題的解決方法并解決較小n值的漢諾塔問(wèn)題.

討論:漢諾塔問(wèn)題屬于非數(shù)值問(wèn)題,難以用數(shù)學(xué)公式表達(dá)其算法,可以從分析問(wèn)題本身的規(guī)律入手.第一步,問(wèn)題化簡(jiǎn),設(shè)A針上只有一個(gè)盤(pán)子,即n=1,則只需將1號(hào)盤(pán)從A針移到C針.第二步,問(wèn)題分解,對(duì)于A針上有n(n>1)個(gè)盤(pán)子的漢諾塔,可分為三個(gè)步驟求解:①將A針上n-1個(gè)盤(pán)子借助于C針移到B針;②把A針上剩下的一個(gè)盤(pán)子移到C針;③將B針上n-1個(gè)盤(pán)子借助于A針移到C針.

顯然,①、③兩步具有與原問(wèn)題相同的性質(zhì),只是在問(wèn)題的規(guī)模上比原問(wèn)題有所縮小,可用遞歸實(shí)現(xiàn).

整理上述分析結(jié)果,把第一步作為遞歸結(jié)束條件,將第二步分析得到的算法作為遞歸算法,可以寫(xiě)出完整的遞歸算法描述.

定義一個(gè)函數(shù)movedisk(int n,char fromneedle,char tempneedle,char toneedle),該函數(shù)的功能是將fromneedle針上的n個(gè)盤(pán)子借助于tempneedle針移動(dòng)到toneedlee針,這樣移動(dòng)n個(gè)盤(pán)子的遞歸算法描述如下.

按照上述算法可編寫(xiě)出如下C語(yǔ)言程序:

3任務(wù)驅(qū)動(dòng)法教學(xué)內(nèi)容的展開(kāi)

適當(dāng)對(duì)遞歸調(diào)用教學(xué)內(nèi)容的展開(kāi),在逐步求解的過(guò)程中培養(yǎng)學(xué)生的探索精神和分析、綜合歸納問(wèn)題的能力.引導(dǎo)學(xué)生探索遞歸調(diào)用編程在其他方面應(yīng)用,總結(jié)遞歸調(diào)用編程的通用方法與思維.

3.1數(shù)值問(wèn)題

可以表達(dá)為數(shù)學(xué)公式的問(wèn)題,如求斐波那契數(shù)列的第n項(xiàng)、求非負(fù)整數(shù)N的階乘、求兩個(gè)整數(shù)的最大公約數(shù)等.

首先來(lái)看一個(gè)數(shù)值問(wèn)題的遞歸算法的典型例子,斐波那契數(shù)列Fib(n)的遞推定義是:

按照上式,求第n項(xiàng)斐波那契數(shù)列的遞歸函數(shù)如下:

對(duì)于數(shù)值問(wèn)題,由于可以表達(dá)為數(shù)學(xué)公式,所以可以從數(shù)學(xué)公式入手推導(dǎo)出問(wèn)題的遞歸公式,然后確定問(wèn)題的邊界條件,從而確定遞歸的算法和遞歸結(jié)束條件.

3.2非數(shù)值問(wèn)題

對(duì)于本身難以用數(shù)學(xué)公式表達(dá)的問(wèn)題,如著名的漢諾塔問(wèn)題、八皇后、九連環(huán)問(wèn)題等非數(shù)值問(wèn)題,求解的一般方法是要設(shè)計(jì)一種算法,找到解決問(wèn)題的一系列操作步驟.如果能夠找到解決問(wèn)題的一系列遞歸操作過(guò)程,同樣可以用遞歸的方法解決這些非數(shù)值問(wèn)題,尋找非數(shù)值問(wèn)題的遞歸算法可以從分析問(wèn)題本質(zhì)的規(guī)律入手,可以按照下列步驟進(jìn)行分析:(1)將問(wèn)題進(jìn)行化簡(jiǎn)與最大限度縮小問(wèn)題規(guī)模,分析問(wèn)題在最簡(jiǎn)單情況下的求解方法與過(guò)程,這時(shí)的算法應(yīng)當(dāng)是最簡(jiǎn)單的非遞歸算法.(2)將問(wèn)題分解為若干個(gè)小問(wèn)題,其中至少有一個(gè)小問(wèn)題具有與原問(wèn)題相同的性質(zhì),只是在規(guī)模上比原問(wèn)題有所縮小,將分解后的每個(gè)小問(wèn)題作為一個(gè)整體,描述用這些較小的問(wèn)題解決原來(lái)較大問(wèn)題的算法.由第(2)步得到的算法就是一個(gè)解決原問(wèn)題的遞歸算法,第(1)步將問(wèn)題的規(guī)模縮到最小時(shí)的條件就是該遞歸算法的結(jié)束條件.

最后引導(dǎo)學(xué)生總結(jié)遞歸程序設(shè)計(jì)的思維與原理,適宜于用遞歸算法求解的問(wèn)題的充分必要條件是:一是問(wèn)題具有某種可借用的類同自身的子問(wèn)題描述的性質(zhì);二是某一有限步的子問(wèn)題有直接的解存在.

編寫(xiě)遞歸程序有兩個(gè)要點(diǎn):一是要找到正確的遞歸算法公式,這是編寫(xiě)遞歸程序的基礎(chǔ);二是要確定遞歸算法的結(jié)束條件,這是決定遞歸程序是否能正常終止的關(guān)鍵.

任務(wù)驅(qū)動(dòng)法課堂教學(xué)的最后,可以設(shè)計(jì)一些比較典型容易實(shí)現(xiàn)的任務(wù),讓學(xué)生趁熱打鐵,通過(guò)完成任務(wù),加深對(duì)教學(xué)內(nèi)容的掌握與理解.

4結(jié)語(yǔ)

遞歸算法在程序設(shè)計(jì)中十分有用.遞歸算法的實(shí)質(zhì)是把問(wèn)題轉(zhuǎn)化為規(guī)模縮小了的同類問(wèn)題的子問(wèn)題.然后遞歸調(diào)用函數(shù)來(lái)表示問(wèn)題的解.當(dāng)一個(gè)問(wèn)題蘊(yùn)含了遞歸關(guān)系且結(jié)構(gòu)比較復(fù)雜時(shí),采用遞歸算法能使程序變得簡(jiǎn)潔和清晰,增加了程序的可讀性,并能夠很容易地解決一些用非遞歸算法很難解決的問(wèn)題.

以任務(wù)驅(qū)動(dòng)法來(lái)設(shè)計(jì)遞歸算法課堂教學(xué)內(nèi)容與過(guò)程,在任務(wù)驅(qū)動(dòng)教學(xué)過(guò)程中培養(yǎng)學(xué)生的探索精神和分析問(wèn)題的能力,激發(fā)學(xué)生的求知欲[3-4],切實(shí)提高了課堂教學(xué)效果.

參考文獻(xiàn):

[1]譚浩強(qiáng).C程序設(shè)計(jì)[M].4版.北京:清華大學(xué)出版社,2010.

[2]嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M].北京:清華大學(xué)出版社,2004.

[3]唐大仕.“遞歸算法”微課教學(xué)設(shè)計(jì)——以“文科計(jì)算機(jī)基礎(chǔ)(下)”為例[J].計(jì)算機(jī)教育,2013(17):5-7.

[4]王婧.任務(wù)驅(qū)動(dòng)法在計(jì)算機(jī)課程教學(xué)中的應(yīng)用 [J].計(jì)算機(jī)教育,2011(8):51-55.

(責(zé)任編輯:邵曉軍)

中圖分類號(hào):TP399;G642

文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1007-5348(2016)04-0075-05

[收稿日期]2016-03-01 [基金項(xiàng)目]韶關(guān)學(xué)院教育教學(xué)改革研究項(xiàng)目(SYJY20131431);韶關(guān)學(xué)院2013年度科研項(xiàng)目(韶學(xué)院〔2013〕205號(hào)).

[作者簡(jiǎn)介]楊平(1977-),男,湖南臨湘人,韶關(guān)學(xué)院數(shù)學(xué)與統(tǒng)計(jì)學(xué)院講師,碩士;研究方向:計(jì)算機(jī)應(yīng)用技術(shù).

Application of Task Driven Method in the Recursive Algorithm in Teaching Design

YANG Ping
(CollegeofMathematicsandStatistics,ShaoguanUniversity,Shaoguan512005,Guangdong,China)

Abstract:Recursionas aprogrammingalgorithmis widely usedinprogramdesign,whichis oneof thekey content of programming thinking.As an example,the application of task driven method in the recursive algorithm for classroomteaching,and designing interesting tasks,is easy to understand,to stimulate students’interest,to use props to decompose the scale of the task,to promote the understanding of the nature of the problem,in order to improve the students’interest in learning,to train students programming ability,and to improve the quality of teaching.

Key words:recursivealgorithm;programmingalgorithm;classroomteaching;programmingability

猜你喜歡
課堂教學(xué)
語(yǔ)文課堂教學(xué)中的質(zhì)疑與發(fā)現(xiàn)
甘肅教育(2020年8期)2020-06-11 06:10:08
從“會(huì)讀”到“會(huì)寫(xiě)”的課堂教學(xué)策略
取舍有道,方為有效課堂教學(xué)
且行且思,讓批注式閱讀融入課堂教學(xué)
高校課堂教學(xué)探討
人間(2015年21期)2015-03-11 15:24:33
讓課堂教學(xué)“活”起來(lái)
對(duì)初中化學(xué)課堂教學(xué)的幾點(diǎn)思考
散文百家(2014年11期)2014-08-21 07:17:04
初中歷史課堂教學(xué)的導(dǎo)入法
散文百家(2014年11期)2014-08-21 07:16:56
關(guān)于高中信息技術(shù)課堂教學(xué)的幾點(diǎn)反思
散文百家(2014年11期)2014-08-21 07:16:52
把“三個(gè)倡導(dǎo)”融入課堂教學(xué)
主站蜘蛛池模板: 国产91精选在线观看| 潮喷在线无码白浆| 99热最新在线| 欧美午夜在线播放| 欧美精品成人一区二区视频一| 久久婷婷六月| 五月综合色婷婷| 嫩草影院在线观看精品视频| 欧美日韩国产在线人| 亚洲黄色视频在线观看一区| 青青草国产在线视频| 99一级毛片| 亚洲精品成人福利在线电影| 最新亚洲人成网站在线观看| 国产第一页第二页| 无码人中文字幕| AV无码国产在线看岛国岛| 色噜噜综合网| 久久久久人妻一区精品| 中国丰满人妻无码束缚啪啪| 美女裸体18禁网站| 国产亚洲精久久久久久无码AV| a免费毛片在线播放| 99性视频| 很黄的网站在线观看| www亚洲天堂| 午夜毛片免费观看视频 | 日本一区高清| 欧美精品亚洲精品日韩专区| 人妻中文字幕无码久久一区| 亚洲无线一二三四区男男| 日本一本正道综合久久dvd| 四虎影视8848永久精品| 女人18一级毛片免费观看| 欧美黄网站免费观看| 精品无码一区二区三区在线视频| 久久黄色小视频| 国产精品xxx| 大学生久久香蕉国产线观看| 无码免费视频| 婷婷色一二三区波多野衣| 免费看久久精品99| 欧美精品色视频| 91人妻在线视频| 色爽网免费视频| 伊人蕉久影院| 直接黄91麻豆网站| 国产91丝袜在线播放动漫 | 中国国产高清免费AV片| 美女被狂躁www在线观看| 午夜a级毛片| 99久久国产综合精品女同| 国产91av在线| 夜夜操天天摸| 亚洲国产91人成在线| 亚洲精品中文字幕无乱码| 一本色道久久88亚洲综合| 欧美午夜一区| 国产精品久久久久久影院| 中国精品自拍| 97视频在线观看免费视频| 亚洲第一成人在线| 喷潮白浆直流在线播放| 精品无码一区二区在线观看| 亚洲天堂精品视频| 国产天天射| 最新精品久久精品| swag国产精品| 国产精品夜夜嗨视频免费视频 | 亚洲欧洲日韩综合色天使| 国产又色又爽又黄| 中文字幕人成人乱码亚洲电影| 日本久久久久久免费网络| 全午夜免费一级毛片| 色综合久久综合网| 毛片视频网址| 欧美精品色视频| 免费人成在线观看成人片| 国产女人在线观看| 99re热精品视频国产免费| 在线中文字幕网| 奇米精品一区二区三区在线观看|