關(guān)鍵詞:創(chuàng)新思維;算法實(shí)踐;課程思政;多維考核;四位一體
0 引言
算法作為計(jì)算機(jī)科學(xué)的核心支柱之一,其重要性不言而喻。圖靈獎(jiǎng)得主Niklaus Wirth的著名論斷“算法+數(shù)據(jù)結(jié)構(gòu)=程序”深刻揭示了算法在計(jì)算機(jī)領(lǐng)域的核心地位[1]。正因如此,算法分析與設(shè)計(jì)課程在國(guó)內(nèi)外眾多高校的計(jì)算機(jī)專(zhuān)業(yè)培養(yǎng)方案中均被設(shè)置為專(zhuān)業(yè)必修課程,它建立在高級(jí)程序設(shè)計(jì)和數(shù)據(jù)結(jié)構(gòu)等先導(dǎo)課程的基礎(chǔ)上,為學(xué)生未來(lái)的職業(yè)發(fā)展和科研深造提供了堅(jiān)實(shí)的支撐。在培養(yǎng)學(xué)生的專(zhuān)業(yè)技能的同時(shí),更應(yīng)注重思想道德教育的開(kāi)展,堅(jiān)持教書(shū)與育人并重,實(shí)現(xiàn)協(xié)同育人的目標(biāo),確保學(xué)生在掌握算法知識(shí)的同時(shí),也具備良好的道德品質(zhì)和社會(huì)責(zé)任感[2]。
算法不僅僅是學(xué)習(xí)過(guò)程中的一門(mén)必修課程,更是未來(lái)考研、就業(yè)面試中不可或缺的重要內(nèi)容。掌握扎實(shí)的算法基礎(chǔ),能夠讓學(xué)生在激烈的競(jìng)爭(zhēng)中脫穎而出,獲得更多的機(jī)會(huì)和選擇。在科學(xué)研究領(lǐng)域,算法研究同樣是最活躍、最前沿的方向之一。算法是許多高級(jí)課程如人工智能課程的基礎(chǔ),需要理論與實(shí)踐相結(jié)合。因此有必要在課程教學(xué)中聚焦創(chuàng)新和實(shí)踐能力的培養(yǎng),多措并舉提升學(xué)生的算法能力。
1 現(xiàn)狀分析
1.1 存在的問(wèn)題
算法課程不僅要求學(xué)生掌握扎實(shí)的理論基礎(chǔ),更強(qiáng)調(diào)動(dòng)手實(shí)踐能力與創(chuàng)新思維的培養(yǎng)。然而,在實(shí)際教學(xué)過(guò)程中,仍然存在一系列問(wèn)題亟待解決。
1) 學(xué)生基礎(chǔ)水平的顯著差異是教學(xué)中的一大挑戰(zhàn)。部分學(xué)生由于前導(dǎo)課程學(xué)習(xí)不扎實(shí),導(dǎo)致在后續(xù)學(xué)習(xí)中知識(shí)儲(chǔ)備不足,難以應(yīng)對(duì)新的學(xué)習(xí)內(nèi)容。這種差異使得教師難以找到平衡點(diǎn),既要滿(mǎn)足基礎(chǔ)薄弱學(xué)生的需求,又要滿(mǎn)足基礎(chǔ)扎實(shí)學(xué)生的學(xué)習(xí)進(jìn)度。因此,實(shí)施精細(xì)化教學(xué)策略,靈活調(diào)整教學(xué)方法,成為提升教學(xué)效果的關(guān)鍵。
2) 算法課程理論深度和邏輯性強(qiáng),學(xué)生在學(xué)習(xí)過(guò)程中往往遇到諸多困難,產(chǎn)生畏難情緒。一旦某個(gè)環(huán)節(jié)跟不上進(jìn)度,整個(gè)學(xué)習(xí)鏈條可能中斷,導(dǎo)致后續(xù)學(xué)習(xí)受阻。因此,需要優(yōu)化教學(xué)內(nèi)容與方法,提高學(xué)生的學(xué)習(xí)興趣與積極性。
3) 學(xué)生動(dòng)手實(shí)踐能力不足也是教學(xué)中的一大問(wèn)題。算法課程要求學(xué)生能夠熟練運(yùn)用編程語(yǔ)言實(shí)現(xiàn)算法,并應(yīng)用于解決工程問(wèn)題。然而,由于缺乏實(shí)踐鍛煉,學(xué)生的動(dòng)手能力普遍較弱。為此,應(yīng)加強(qiáng)實(shí)踐教學(xué)環(huán)節(jié),提供更多的實(shí)踐機(jī)會(huì),以提升學(xué)生的動(dòng)手實(shí)踐能力。
4) 學(xué)生對(duì)算法分析能力的不足也是值得關(guān)注的問(wèn)題。在解決實(shí)際工程問(wèn)題時(shí),算法的設(shè)計(jì)與分析是相互促進(jìn)的。然而,由于缺乏對(duì)算法性能的評(píng)估與優(yōu)化能力,學(xué)生在解決問(wèn)題時(shí)往往難以達(dá)到理想效果。應(yīng)加強(qiáng)算法分析能力的培養(yǎng),提高學(xué)生的問(wèn)題解決能力。
5) 學(xué)生對(duì)創(chuàng)新能力的培養(yǎng)重視不夠也是一個(gè)需要關(guān)注的問(wèn)題。優(yōu)化算法的過(guò)程需要?jiǎng)?chuàng)新思維和靈活應(yīng)對(duì)變化的能力。然而,學(xué)生在算法學(xué)習(xí)中往往缺乏對(duì)創(chuàng)新性的深入培養(yǎng)和足夠重視。因此,應(yīng)強(qiáng)調(diào)創(chuàng)新在算法學(xué)習(xí)中的重要性,鼓勵(lì)學(xué)生勇于嘗試新思路,提升創(chuàng)新能力。
6) 課程在思政元素融入方面尚顯不足。課程思政的融入對(duì)于引導(dǎo)學(xué)生形成正確觀(guān)念至關(guān)重要,應(yīng)深入挖掘算法課程中的思政元素,將其有效融入教學(xué)中,以培養(yǎng)學(xué)生的社會(huì)責(zé)任感和職業(yè)道德。
1.2 相關(guān)工作
在算法課程的教學(xué)改革方面,眾多教師已經(jīng)從多個(gè)維度,包括教學(xué)模式的創(chuàng)新、計(jì)算思維的深化、創(chuàng)新能力的培養(yǎng)以及課程思政的融入等方面,進(jìn)行了廣泛而深入的探索研究。這些努力不僅豐富了教學(xué)手段,提升了學(xué)生的參與度,還有效地培養(yǎng)了學(xué)生的計(jì)算思維與創(chuàng)新能力,為算法課程的教學(xué)質(zhì)量帶來(lái)了顯著的提升。
為了激發(fā)學(xué)生的學(xué)習(xí)熱情,文獻(xiàn)[3]提出了“以賽勵(lì)教、以賽督學(xué)”的教學(xué)模式,以程序設(shè)計(jì)競(jìng)賽為引導(dǎo),提升學(xué)生的算法創(chuàng)新和實(shí)踐能力。陳英等提出在算法分析與設(shè)計(jì)課程中引入OBE教學(xué)模式,改革教學(xué)目標(biāo)和任務(wù),與競(jìng)賽相結(jié)合,推進(jìn)“師導(dǎo)生學(xué)”和線(xiàn)上線(xiàn)下混合教學(xué)方式,制定長(zhǎng)效激勵(lì)機(jī)制,構(gòu)建面向?qū)W生綜合產(chǎn)出的考核方式[4],教學(xué)效果明顯提升。
在計(jì)算思維的深化方面,何高奇等人提出基于計(jì)算思維培養(yǎng)的算法分析與設(shè)計(jì)教學(xué)改革思想,從教學(xué)內(nèi)容設(shè)計(jì)、計(jì)算資源開(kāi)發(fā)、計(jì)算思維全方位訓(xùn)練3個(gè)方面介紹具體教改措施[1]。此外,文獻(xiàn)[5]提出課堂全程育人的啟發(fā)式教學(xué)模式,從教學(xué)方法、課程思政、課程建設(shè)多個(gè)維度闡述了該課程的教學(xué)改革。
在專(zhuān)業(yè)課程的教學(xué)過(guò)程中,要把思政教育貫穿始終。算法不僅要正確,更要符合法律規(guī)范。曹珊珊等人提出基于三維立體運(yùn)行機(jī)制的課程思政教學(xué)思路,實(shí)現(xiàn)知識(shí)與能力的傳授和價(jià)值引領(lǐng)相結(jié)合[6]。張偉娜等人提出算法設(shè)計(jì)與分析課程思政內(nèi)容體系結(jié)構(gòu)及思政元素的系統(tǒng)分析方法,并闡述了在教學(xué)的各個(gè)環(huán)節(jié)進(jìn)行課程思政的主要方法和措施[7]。
2 教學(xué)改革
算法課程重點(diǎn)是能夠通過(guò)分析問(wèn)題設(shè)計(jì)相應(yīng)的求解方法,并用代碼實(shí)現(xiàn)所提出的算法,之后結(jié)合具體的場(chǎng)景對(duì)實(shí)現(xiàn)的算法從時(shí)間和空間復(fù)雜度等方面分析,根據(jù)分析結(jié)果優(yōu)化算法,是一個(gè)迭代的過(guò)程,在此過(guò)程中,要求學(xué)生具有設(shè)計(jì)、分析、實(shí)現(xiàn)和創(chuàng)新等多方面的綜合能力??偨Y(jié)教學(xué)過(guò)程中的問(wèn)題,本文以創(chuàng)新思維培養(yǎng)、實(shí)踐能力提升為焦點(diǎn),圍繞課堂教學(xué)目標(biāo)、教學(xué)內(nèi)容、練習(xí)資源、實(shí)踐途徑和評(píng)價(jià)機(jī)制為主線(xiàn)開(kāi)展教學(xué)改革探索,培養(yǎng)知識(shí)、能力、素質(zhì)同步提升的高素質(zhì)人才。課程教學(xué)改革總體架構(gòu)如圖1所示。
2.1 重構(gòu)課程目標(biāo),完善教學(xué)內(nèi)容
以培養(yǎng)創(chuàng)新思維、提升實(shí)踐能力為目標(biāo),明確課程的知識(shí)、能力和素質(zhì)核心要求,并挖掘思政元素,踐行結(jié)果導(dǎo)向,以學(xué)生為中心,持續(xù)改進(jìn)的核心理念,培養(yǎng)學(xué)生創(chuàng)新思維能力,將專(zhuān)業(yè)教學(xué)、能力培養(yǎng)和價(jià)值觀(guān)引領(lǐng)協(xié)同發(fā)展,培養(yǎng)社會(huì)主義建設(shè)需要的德才兼?zhèn)涞男鹿た迫瞬拧!八惴ǚ治雠c設(shè)計(jì)”課程目標(biāo)如下:
1) 知識(shí)目標(biāo)。掌握遞歸、分治、回溯、動(dòng)態(tài)規(guī)劃、貪心法等算法的基本原理,掌握經(jīng)典算法的設(shè)計(jì)、分析和應(yīng)用。
2) 能力目標(biāo)。根據(jù)問(wèn)題設(shè)計(jì)算法并分析其性能,提出創(chuàng)新性的優(yōu)化方法。
3) 素質(zhì)目標(biāo)。有良好的創(chuàng)新思維,有正確的價(jià)值觀(guān)和良好的職業(yè)素養(yǎng)。
以提升學(xué)生的工作能力為導(dǎo)向,持續(xù)改進(jìn)和完善教學(xué)內(nèi)容,內(nèi)容要與時(shí)俱進(jìn)、常備常新。從以下4個(gè)方面入手優(yōu)化教學(xué)內(nèi)容:基礎(chǔ)理論和方法的分析,典型問(wèn)題的建模和抽象,解決方案的實(shí)現(xiàn),知識(shí)的創(chuàng)新運(yùn)用。教學(xué)內(nèi)容依據(jù)此理念重新設(shè)計(jì),融合知識(shí)點(diǎn)、實(shí)驗(yàn)、在線(xiàn)題庫(kù)、抽象思維能力為一體,實(shí)施課程教學(xué)。
2.2“ 課堂、實(shí)踐、資源、評(píng)價(jià)”四位一體的算法課程教學(xué)思路
在算法分析與設(shè)計(jì)課程的整體設(shè)計(jì)思路上,以學(xué)生為中心,構(gòu)建“課堂、實(shí)踐、資源、評(píng)價(jià)”四位一體的教學(xué)思路。
課堂上拓展多樣化的教學(xué)模式、手段,提供多種學(xué)習(xí)途徑,方便學(xué)生隨時(shí)學(xué)習(xí)實(shí)踐。采用線(xiàn)上線(xiàn)下混合式教學(xué),結(jié)合案例教學(xué),對(duì)知識(shí)點(diǎn)深度剖析,同時(shí)融入思政元素,為后續(xù)實(shí)施翻轉(zhuǎn)課堂奠定基礎(chǔ)。線(xiàn)上采用超星學(xué)習(xí)通等網(wǎng)絡(luò)平臺(tái),發(fā)布算法課程的視頻、課件、習(xí)題等資源,供學(xué)生自主學(xué)習(xí)。線(xiàn)下教學(xué)重點(diǎn)講解算法的原理、設(shè)計(jì)和分析方法。通過(guò)案例分析、小組討論等形式,引導(dǎo)學(xué)生深入理解算法思想,培養(yǎng)學(xué)生的邏輯思維能力。
算法課程是一門(mén)非常注重實(shí)踐的課程,通過(guò)拓展多渠道實(shí)踐方式,提升實(shí)踐水平。通過(guò)專(zhuān)題實(shí)訓(xùn)進(jìn)行從問(wèn)題分析、建模、實(shí)現(xiàn)、報(bào)告全方位練習(xí),輔助以開(kāi)放式算法平臺(tái)自主練習(xí),設(shè)置開(kāi)放性題目鍛煉創(chuàng)新能力,結(jié)合線(xiàn)上判題平臺(tái)(如OJ系統(tǒng)),開(kāi)展線(xiàn)上競(jìng)賽,以賽促學(xué),激發(fā)同學(xué)們學(xué)習(xí)算法的熱情。
提供多種形式的教學(xué)資源,除了傳統(tǒng)的課程大綱、教案、PPT以外,借助兩個(gè)平臺(tái):線(xiàn)上教學(xué)平臺(tái)和在線(xiàn)判別平臺(tái)(OJ) ,提供多媒體教學(xué)資源以及算法練習(xí)試題庫(kù),并選取典型題目形成專(zhuān)題實(shí)訓(xùn)庫(kù)。
算法課程從多方面評(píng)價(jià)課程的教學(xué)效果。課程評(píng)價(jià)包括:1) 學(xué)生對(duì)課堂教學(xué)效果的評(píng)價(jià);2) 改變傳統(tǒng)的評(píng)價(jià)模式,將評(píng)價(jià)標(biāo)準(zhǔn)向?qū)嵺`能力傾斜,由平時(shí)考核、實(shí)驗(yàn)考核和期末考核組成,實(shí)現(xiàn)學(xué)習(xí)效果的全面考核;3) 通過(guò)問(wèn)卷調(diào)查了解學(xué)生對(duì)課程的掌握情況,持續(xù)優(yōu)化教學(xué)過(guò)程;4) 通過(guò)舉辦模擬算法競(jìng)賽和學(xué)生參加程序設(shè)計(jì)競(jìng)賽成績(jī)反饋教改效果。
2.3 多措并舉提升創(chuàng)新實(shí)踐能力
除完善課堂教學(xué)內(nèi)容外,通過(guò)不斷拓展育人渠道。挖掘生活中的算法問(wèn)題,嘗試學(xué)生為主的翻轉(zhuǎn)課堂增強(qiáng)學(xué)生的參與度,探索課程實(shí)踐、模擬算法競(jìng)賽、企業(yè)名師課堂等模式,多措并舉提升學(xué)生創(chuàng)新實(shí)踐能力,實(shí)現(xiàn)知行合一。“算法分析與設(shè)計(jì)”課程多項(xiàng)舉措如表1所示。
3 結(jié)論
算法作為一門(mén)課程,深深根植于創(chuàng)新和實(shí)踐的沃土之中,各類(lèi)算法競(jìng)賽更是這一特性的生動(dòng)體現(xiàn)。在教學(xué)過(guò)程中,充分借助線(xiàn)上線(xiàn)下多種教學(xué)手段,深入剖析算法原理,幫助學(xué)生構(gòu)建扎實(shí)的理論基礎(chǔ)。同時(shí),借助豐富的資源和專(zhuān)題競(jìng)賽,強(qiáng)化學(xué)生的動(dòng)手實(shí)踐能力,讓其在實(shí)踐中深化對(duì)算法的理解和應(yīng)用。為了全面培養(yǎng)學(xué)生的創(chuàng)新意識(shí),采取多種舉措,鼓勵(lì)其勇于探索、敢于創(chuàng)新。在考核環(huán)節(jié),特別設(shè)置開(kāi)放性題目,著重考查學(xué)生的創(chuàng)新實(shí)踐能力,以此激發(fā)學(xué)生的創(chuàng)新思維,提升他們的實(shí)際解決問(wèn)題的能力。此外,我們還注重思想教育與專(zhuān)業(yè)知識(shí)的協(xié)同育人。通過(guò)一系列舉措的實(shí)施,旨在培養(yǎng)出既具備扎實(shí)算法理論基礎(chǔ),又擁有出色創(chuàng)新實(shí)踐能力的學(xué)生,為其全面發(fā)展奠定堅(jiān)實(shí)的基礎(chǔ)。