王金元 林生紅
摘? ?要:在新工科背景下,有必要對(duì)“算法導(dǎo)論”課程進(jìn)行教學(xué)改革。以面向新工科應(yīng)用為導(dǎo)向,歸納算法類問(wèn)題的求解框架,培養(yǎng)學(xué)生良好的思維方法,設(shè)計(jì)適合本課程的教學(xué)策略。在課堂教學(xué)中結(jié)合最新的MOOC教學(xué)和Moodle平臺(tái)教學(xué),探索三位一體的教學(xué)模式。通過(guò)教學(xué)改革,開發(fā)一套行之有效的教學(xué)方案,使本門課程成為學(xué)生喜歡學(xué)、能學(xué)好、會(huì)應(yīng)用的高水平課程。
關(guān)鍵詞:新工科;“算法導(dǎo)論”;教學(xué)模式
1? ? “算法導(dǎo)論”課程面臨的問(wèn)題
作為新工科背景下的一門專業(yè)基礎(chǔ)課程,“算法導(dǎo)論”面臨著內(nèi)容量大但學(xué)時(shí)少,且學(xué)生水平參差不齊的現(xiàn)狀。本課程本應(yīng)是一門非常重要的課程,卻被學(xué)生視為無(wú)足輕重的課程[1]。導(dǎo)致這種現(xiàn)狀的原因,有以下5個(gè)方面:
第一,課程內(nèi)容量大,算法種類繁雜,沒有一個(gè)通用的算法框架,學(xué)生理解起來(lái)困難重重,不能把握不同算法的區(qū)別與聯(lián)系,容易混淆各類算法。
第二,在現(xiàn)有教學(xué)中,老師為知識(shí)的傳播者,學(xué)生為知識(shí)的被動(dòng)接受者。這種“填鴨式”教學(xué)導(dǎo)致學(xué)生只會(huì)機(jī)械記憶,很少主動(dòng)思考,互動(dòng)性不強(qiáng)。
第三,學(xué)生學(xué)習(xí)興趣不足,有些學(xué)生認(rèn)為課程太難,進(jìn)而產(chǎn)生畏懼心理,有學(xué)生認(rèn)為所學(xué)知識(shí)工作后用不上,失去學(xué)習(xí)興趣。
第四,課程內(nèi)容涉及的知識(shí)面比較窄,僅講解一些語(yǔ)言和程序設(shè)計(jì),然后用算法解題,不斷地讓學(xué)生做一道道題目,不符合該課程的教學(xué)思路。
第五,教學(xué)內(nèi)容陳舊,過(guò)度地強(qiáng)調(diào)“講授”,不注重培養(yǎng)學(xué)生的算法思維的建立。新工科背景下,學(xué)生并不是只需要擁有技能而不需要建立算法思維。
鑒于目前存在的問(wèn)題,“算法導(dǎo)論”課程的教學(xué)改革勢(shì)在必行。為了滿足新工科背景下課程的新需求,需要對(duì)存在的問(wèn)題進(jìn)行深入的研究,探索適合本課程的教學(xué)改革方案。
2? ? 算法求解框架研究
本課程涉及的算法種類繁多,單純講授具體的算法內(nèi)容,容易使學(xué)生混淆,授課效果不好。為了使學(xué)生更好地理解算法,有必要將具體的算法實(shí)例抽象為算法框架,將算法求解步驟模塊化。每次學(xué)習(xí)新算法時(shí),直接代入算法框架即可。
為了提煉算法框架,文章以教材中的旅行商問(wèn)題(Traveling Salesman Problem,TSP)舉例。通過(guò)對(duì)該問(wèn)題進(jìn)行抽象化,得到算法框架為:數(shù)學(xué)建?!惴ú呗栽O(shè)計(jì)→算法的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)→算法的控制結(jié)構(gòu)設(shè)計(jì)→算法的程序設(shè)計(jì)→算法的正確性分析→算法的復(fù)雜性分析[2]。掌握了算法框架,可以更好地理解具體的算法實(shí)例,達(dá)到融會(huì)貫通的效果。
3? ? 思維方法和教學(xué)策略研究
傳統(tǒng)教學(xué)只注重講授知識(shí),并不注重學(xué)生思維模式的培養(yǎng),容易導(dǎo)致學(xué)生只掌握知識(shí),但是遇到新算法問(wèn)題仍然不會(huì)求解。因此,應(yīng)該把講授和思維培養(yǎng)相結(jié)合,在傳授知識(shí)的同時(shí),注重思維方法的培養(yǎng)[3]。
借助于思維方法,提煉的算法框架需要采取不同的教學(xué)策略,比如案例教學(xué)和演示教學(xué)。對(duì)于框架中的“算法的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)”,可借助Vcompter軟件進(jìn)行演示教學(xué)數(shù)據(jù)間的邏輯關(guān)系。針對(duì)“算法的控制結(jié)構(gòu)設(shè)計(jì)”,可用Raptor軟件演示各種結(jié)構(gòu)。針對(duì)“程序語(yǔ)言設(shè)計(jì)及算法實(shí)現(xiàn)”,可用Raptor軟件進(jìn)行編程演示??蚣芷渌糠挚刹捎冒咐虒W(xué)。
4? ? 教學(xué)模式設(shè)計(jì)
傳統(tǒng)教學(xué)模式過(guò)于單一,僅通過(guò)課堂教學(xué)效果不是很好。為了激發(fā)學(xué)生的學(xué)習(xí)興趣,本文提出基于大型開放式網(wǎng)絡(luò)課程(Massive Open Online Courses,MOOC)教學(xué)、Moodle平臺(tái)教學(xué)和課堂教學(xué)三位一體的教學(xué)模式,如圖1所示。
對(duì)于具體的算法實(shí)例,可以采用MOOC和Moodle平臺(tái)教學(xué)。課前,學(xué)生進(jìn)入MOOC平臺(tái)和Moodle平臺(tái),學(xué)習(xí)相關(guān)課件、視頻,預(yù)習(xí)知識(shí)點(diǎn)。課中,采用案例和演示教學(xué)進(jìn)行課堂教學(xué),使學(xué)生掌握知識(shí)點(diǎn)。課后,通過(guò)Moodle平臺(tái)做作業(yè)鞏固知識(shí)點(diǎn)。將MOOC教學(xué)、Moodle教學(xué)和課堂教學(xué)相結(jié)合,可以構(gòu)建出三位一體的教學(xué)模式。
在三位一體教學(xué)模式中,算法框架由具體實(shí)例抽象而來(lái)。根據(jù)算法框架,采用案例驅(qū)動(dòng)教學(xué),將具體實(shí)例套入框架,使算法淺顯易懂。根據(jù)算法框架,對(duì)學(xué)生進(jìn)行思維訓(xùn)練,提出合適的教學(xué)策略。教學(xué)策略反過(guò)來(lái)會(huì)促進(jìn)算法框架的完善。該教學(xué)模式可顯著提升授課效果,也可充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性,使本門課程成為學(xué)生喜歡學(xué)、能學(xué)好、會(huì)應(yīng)用的高水平課程。
5? ? 結(jié)語(yǔ)
文章采用實(shí)例驅(qū)動(dòng)、抽象化、講授與思維培養(yǎng)并重、三位一體教學(xué)模式等研究方法,探索了“算法導(dǎo)論”課程的教學(xué)改革方案。作為新工科背景下非常重要的一門課程,本門課程的教學(xué)改革研究具有重要的實(shí)踐意義。通過(guò)教學(xué)改革,可以幫助學(xué)生更好地學(xué)習(xí)課程,提升學(xué)生學(xué)習(xí)興趣,也可培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的思維能力,并在以后的工作中,達(dá)到學(xué)以致用的效果。
[參考文獻(xiàn)]
[1]馬漢杰,馮杰,黃海.淺析《算法導(dǎo)論與體系結(jié)構(gòu)》的教學(xué)改革[J].教育探索,2014(6):93-94.
[2]莊連生.以問(wèn)題為導(dǎo)向的情景式“算法導(dǎo)論”課程教學(xué)方法初探[J].考試周刊,2016(99):121.
[3]石云,陳聲波.地方高校“計(jì)算機(jī)導(dǎo)論”算法思維培養(yǎng)的教學(xué)設(shè)計(jì)[J].教育教學(xué)論壇,2016(2):173-174.