耿霞 王玉存 吳秋蘭
摘要:分析當(dāng)前非計算機專業(yè)數(shù)據(jù)結(jié)構(gòu)教學(xué)中存在的問題,針對非計算機專業(yè)學(xué)生的特點,基于5個“滿足”,提出一種培養(yǎng)學(xué)生學(xué)習(xí)興趣的教學(xué)方法。
關(guān)鍵詞:非計算機專業(yè);數(shù)據(jù)結(jié)構(gòu);教學(xué)質(zhì)量;興趣式教學(xué)法
0、引言
數(shù)據(jù)結(jié)構(gòu)是研究非數(shù)值問題中計算機的操作對象以及它們之間關(guān)系和操作的學(xué)科。數(shù)據(jù)結(jié)構(gòu)課程的性質(zhì)和研究內(nèi)容決定了它不僅是計算機專業(yè)的基礎(chǔ)課,而且已經(jīng)成為眾多理工專業(yè)的重要課程,比如數(shù)學(xué)、信息、測繪、遙感、電子、通信等專業(yè)均開設(shè)了此課程。它所討論的內(nèi)容和方法,不僅是一般程序設(shè)計的基礎(chǔ),而且對學(xué)生繼續(xù)學(xué)習(xí)計算機領(lǐng)域的其他知識都很有幫助。
由于教學(xué)目標(biāo)、學(xué)生基礎(chǔ)、課時設(shè)置等因素的不同,非計算機專業(yè)數(shù)據(jù)結(jié)構(gòu)的教學(xué)具有自身的特點和規(guī)律,以往該課程的教學(xué)研究主要針對計算機專業(yè)展開,而針對非計算機專業(yè)數(shù)據(jù)結(jié)構(gòu)教學(xué)的研究較少。因此,筆者從非計算機專業(yè)的角度闡述數(shù)據(jù)結(jié)構(gòu)教學(xué)過程中存在的問題,進而分析原因,探討興趣式教學(xué)方法,為提高教學(xué)效果尋找途徑。
1、非計算機專業(yè)數(shù)據(jù)結(jié)構(gòu)教學(xué)中存在的問題
1)前導(dǎo)課程知識掌握不足。
高級語言程序設(shè)計是數(shù)據(jù)結(jié)構(gòu)課程重要的前導(dǎo)課程之一。非計算機專業(yè)學(xué)生所學(xué)的高級語言一般是C或者c++,受課時限制等原因,非計算機專業(yè)學(xué)生只能掌握編程語言的一些基本知識,對數(shù)據(jù)結(jié)構(gòu)中大量用到的數(shù)組、函數(shù)、結(jié)構(gòu)體、指針、遞歸等知識掌握不足,因而理解算法和設(shè)計算法的能力較差,直接妨礙了數(shù)據(jù)結(jié)構(gòu)課程的學(xué)習(xí),影響了學(xué)生對數(shù)據(jù)結(jié)構(gòu)知識的理解,甚至使學(xué)生喪失了學(xué)好這門課的自信心和學(xué)習(xí)興趣。
2)課時和教學(xué)目標(biāo)之間存在矛盾。
數(shù)據(jù)結(jié)構(gòu)涉及四大邏輯結(jié)構(gòu)(線性、樹、圖和集合)、兩大存儲結(jié)構(gòu)(順序存儲和鏈?zhǔn)酱鎯Γ?、查找、排序等眾多算法,這些知識點自成體系,而且對非計算機專業(yè)學(xué)生都很重要。相對計算機專業(yè),非計算機專業(yè)的理論課學(xué)時一般都相對不足,在教學(xué)的過程中往往每個知識點都提到但重點不突出,另外,有些經(jīng)典算法比較復(fù)雜,學(xué)生學(xué)習(xí)基礎(chǔ)較薄弱,很難在較少的學(xué)時內(nèi)理解掌握,教學(xué)難度大。
3)輕實踐。
非計算機專業(yè)的數(shù)據(jù)結(jié)構(gòu)實驗課時普遍很少,為了兼顧眾多實驗內(nèi)容,大多數(shù)實驗任務(wù)的規(guī)模都比較小,缺乏系統(tǒng)性和應(yīng)用性,使學(xué)生對課程的實用性產(chǎn)生疑惑,降低了進一步學(xué)習(xí)這門課程的興趣。
4)教學(xué)內(nèi)容與專業(yè)脫節(jié)。
目前,非計算機專業(yè)一般都沒有結(jié)合專業(yè)特點加強某部分知識點的學(xué)習(xí),學(xué)生無法體會到數(shù)據(jù)結(jié)構(gòu)理論知識如何為專業(yè)實踐服務(wù),無法深刻理解學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的目的,也無法很好地調(diào)動學(xué)生學(xué)習(xí)這門課程的興趣和積極性。
2、“5個滿足”的興趣式教學(xué)
愛因斯坦說:“我認為對于一切情況,只有熱愛才是最好的老師,它遠遠超過責(zé)任感”。針對非計算機專業(yè)的特點,教師在數(shù)據(jù)結(jié)構(gòu)教學(xué)中要“因?qū)I(yè)施教”,從學(xué)生的實際情況出發(fā),掌握學(xué)生的心理需求,提高學(xué)生的學(xué)習(xí)動力。在整個數(shù)據(jù)結(jié)構(gòu)的教學(xué)過程中,筆者認為可以從“5個滿足、5個促進”來著手培養(yǎng)學(xué)生的學(xué)習(xí)興趣。
1)滿足學(xué)生的求助心理,促進學(xué)生產(chǎn)生積極情緒。
首先,解決前導(dǎo)課程知識的不足。前導(dǎo)課程知識不足使非計算機專業(yè)學(xué)生在最初學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)課程時容易產(chǎn)生畏難心理。教師一方面可以提前和前導(dǎo)課程授課教師積極溝通,對數(shù)據(jù)結(jié)構(gòu)涉及的一些知識點進行有目的的講解,如動態(tài)存儲分配、結(jié)構(gòu)體、指針等,鍛煉學(xué)生編寫調(diào)試的能力,為后續(xù)學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)創(chuàng)造條件。另一方面,重視初期的教學(xué)效果,不要使學(xué)生在一開始就“掉隊”。目前大多數(shù)教材都是在前兩章介紹基本概念和線性表,這兩章知識非常重要,是其他后續(xù)章節(jié)的重要基礎(chǔ),教師在講授這兩章內(nèi)容時,可適當(dāng)放慢授課節(jié)奏,由淺入深引導(dǎo)學(xué)生進行學(xué)習(xí),只有學(xué)生對數(shù)據(jù)結(jié)構(gòu)感覺入門了,才有繼續(xù)學(xué)好后續(xù)內(nèi)容的動力。
其次,及時發(fā)現(xiàn)并解決教學(xué)中的問題。在教學(xué)過程,教師要及時發(fā)現(xiàn)學(xué)生學(xué)習(xí)中存在的問題,對具有普遍性的問題進行講解。由于課時有限,課下可以通過一些即時通信工具,如QQ、微信等延伸教學(xué),幫助學(xué)生查缺補漏,及時解決學(xué)習(xí)中碰到的問題,盡可能減少學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)過程中的“絆腳石”,保證學(xué)生的學(xué)習(xí)興趣不會消失,促使學(xué)生產(chǎn)生積極情緒。
2)滿足學(xué)生的實用心理,理論聯(lián)系實際促進學(xué)生增強求知欲。
不同專業(yè)有自身不同的特點和需求,數(shù)據(jù)結(jié)構(gòu)需要加強課程的專業(yè)應(yīng)用性。根據(jù)不同專業(yè)選取不同的重點內(nèi)容進行學(xué)習(xí),學(xué)生們體會到數(shù)據(jù)結(jié)構(gòu)是一門抽象理論與實踐緊密結(jié)合且非常有趣味的課程,從而激發(fā)學(xué)生們的學(xué)習(xí)興趣。例如,路徑分析是地理信息系統(tǒng)網(wǎng)絡(luò)分析中的關(guān)鍵問題,針對測繪、遙感、地信等專業(yè),在講授圖結(jié)構(gòu)時,可重點講授圖的幾個應(yīng)用問題:使用Dijkslla算法和Floyd算法求最短路徑、AOE網(wǎng)和關(guān)鍵路徑等。數(shù)學(xué)、信息等專業(yè)需要處理的數(shù)據(jù)越來越多,大量的數(shù)據(jù)需要壓縮存儲,哈夫曼編碼在數(shù)據(jù)的無損壓縮方面發(fā)揮著重要的作用,因此在對數(shù)學(xué)、信息等專業(yè)講授數(shù)據(jù)結(jié)構(gòu)時,可重點講授二叉樹的一個經(jīng)典應(yīng)用,即哈夫曼樹和哈夫曼編碼。
實例教學(xué)可以激發(fā)學(xué)生的學(xué)習(xí)興趣,實際需求是引發(fā)學(xué)生學(xué)習(xí)興趣的最直接動機。結(jié)合具體的應(yīng)用實例講解知識點,可增加教學(xué)的趣味性,吸引學(xué)生的注意力。比如,將棧和表達式求值結(jié)合起來,可使學(xué)生更直觀地了解棧的應(yīng)用價值,從而更有動力去學(xué)習(xí)棧的相關(guān)知識。再如,美國流行一種找詞游戲,要求游戲者從一張?zhí)顫M字符的正方形表中找出所有的英文單詞,這些詞可以橫著讀、豎著讀或者斜著讀,設(shè)計這個游戲可以借助數(shù)據(jù)結(jié)構(gòu)中字符串和多維數(shù)組的知識。將理論知識和學(xué)生感興趣的東西結(jié)合起來,會使學(xué)生感覺新奇,并且拓寬了學(xué)生的知識面。
3)滿足學(xué)生主動參與教學(xué)的意愿,互動教學(xué)促進學(xué)生產(chǎn)生學(xué)習(xí)興趣。
我國思想家孔子說過:“學(xué)而不思則罔”,也就是說如果只是一味學(xué)習(xí)而不思考,就會感到迷惑而無所收獲。西方的哲人康德說過“感性無知性則盲,知性無感性則空”。可見,在知識的獲取上,無論是東方還是西方都強調(diào)學(xué)和思的結(jié)合,這就啟示我們,在數(shù)據(jù)結(jié)構(gòu)的教學(xué)過程中,要改變傳統(tǒng)的教學(xué)模式,讓眾多的學(xué)生主動參與課堂教學(xué),積極主動地思考問題,由被動接受知識變?yōu)橹鲃游罩R,從而提高學(xué)生主動學(xué)習(xí)的積極性,鍛煉學(xué)生良好的思維能力。endprint
教學(xué)實踐過程中,可以對重點難點內(nèi)容有效設(shè)計“提問—討論—解決方法—再提問”的方式,用問題激發(fā)學(xué)生積極主動地思考,引導(dǎo)他們解決問題。比如,循環(huán)隊列這個難點不容易理解,教師可以先從前面學(xué)過的線性表的順序存儲人手,讓學(xué)生思考如何改造數(shù)組實現(xiàn)隊列的順序存儲,然后再通過不斷地反復(fù)提問、思考、解決問題、再提問的方式,學(xué)生自然而然地掌握循環(huán)隊列的有關(guān)知識,并且通過這種互動式教學(xué),提高學(xué)生獨立思考問題的能力,養(yǎng)成相互交流學(xué)習(xí)體會的習(xí)慣,進一步提高分析問題和解決問題的能力。
4)滿足學(xué)生的專業(yè)實踐教學(xué)需求,促進學(xué)生實踐能力。
數(shù)據(jù)結(jié)構(gòu)是一門理論和實踐結(jié)合緊密的課程,對數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)最終體現(xiàn)在程序設(shè)計上。實踐教學(xué)在非計算機專業(yè)數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)中具有舉足輕重的作用。
在傳統(tǒng)的實踐教學(xué)中,往往采用規(guī)模較小的一般性實驗作為實踐內(nèi)容,這種實踐是驗證性的,比較簡單直接,學(xué)生得到的鍛煉比較少,激發(fā)不了學(xué)生的學(xué)習(xí)興趣。另外,不同專業(yè)學(xué)生學(xué)習(xí)的側(cè)重點是不同的,如果采用統(tǒng)一的尺度要求所有學(xué)生,往往起不到較好的教學(xué)效果。為了達到“因?qū)I(yè)施教”的目的,可以采用層次化的設(shè)計思想,把實驗自下而上分為基礎(chǔ)性實驗、應(yīng)用性實驗和綜合性實驗。基礎(chǔ)性實驗注重對基礎(chǔ)知識的理解和掌握,主要鍛煉學(xué)生把教材中的算法轉(zhuǎn)換為程序的能力;應(yīng)用性實驗是在基礎(chǔ)性實驗的基礎(chǔ)上,以鞏固和應(yīng)用數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)知識為目的,注重培養(yǎng)學(xué)生理論和實踐相結(jié)合的能力;綜合性實驗涉及多個知識點,注重培養(yǎng)學(xué)生綜合應(yīng)用知識和創(chuàng)新的能力。例如,電子、通信專業(yè)的學(xué)生在學(xué)習(xí)計算機語言時,側(cè)重計算機硬件方面的應(yīng)用,主要培養(yǎng)基本的編程能力,實驗內(nèi)容以基礎(chǔ)性實驗為主,兼顧應(yīng)用性實驗;測繪、遙感、信息等專業(yè)側(cè)重于培養(yǎng)分析問題、解決問題的能力,實驗內(nèi)容以應(yīng)用性實驗為主,適當(dāng)增加綜合性實驗。在進行綜合性實驗時,教師可以將學(xué)生分組,把問題進行模塊劃分,通過學(xué)生的分工協(xié)作,培養(yǎng)學(xué)生的軟件工程意識,增強學(xué)生團結(jié)合作的能力。
5)滿足學(xué)生的競爭要求,建立有效的激勵機制促進學(xué)生產(chǎn)生主動學(xué)習(xí)的熱情。
優(yōu)秀作品展示是一種有效的激勵機制。心理學(xué)家指出,在教學(xué)過程中,學(xué)生如果獲得成功,就會產(chǎn)生愉悅、輕松的情緒,這種情況反復(fù)出現(xiàn)就會產(chǎn)生學(xué)習(xí)興趣,久而久之就產(chǎn)生了學(xué)習(xí)動機。在數(shù)據(jù)結(jié)構(gòu)教學(xué)過程中,教師可以將優(yōu)秀的實驗作業(yè)、學(xué)生的創(chuàng)新思想等進行統(tǒng)一展示和講解,通過這種方式既可以增強部分學(xué)生的自信心,又可以在班級內(nèi)形成良好的競爭氛圍,提升教學(xué)質(zhì)量。
在教學(xué)中,教師可以向?qū)W生介紹ACM國際大學(xué)生程序設(shè)計競賽。競賽題目有趣且有挑戰(zhàn)性,ACM網(wǎng)站上的排行榜自然而然地會在學(xué)生中間形成一種競爭的氛圍。教師將學(xué)生在ACM網(wǎng)站上做題的情況納入最后成績的評定,可以進一步激發(fā)學(xué)生主體學(xué)習(xí)的積極性,提高學(xué)生的編程能力,使學(xué)生更加了解數(shù)據(jù)結(jié)構(gòu)的廣泛應(yīng)用。
3、結(jié)語
心理學(xué)研究表明,當(dāng)學(xué)生對學(xué)習(xí)對象有興趣時,大腦中有關(guān)學(xué)習(xí)神經(jīng)的細胞處于高度興奮狀態(tài),而無關(guān)的則處于抑制狀態(tài)??鬃右舱J為:“知之者不如好之者,好之者不如樂之者?!痹诜怯嬎銠C專業(yè)數(shù)據(jù)結(jié)構(gòu)的教學(xué)過程中,如果學(xué)生產(chǎn)生了濃厚的興趣,就會自覺克服學(xué)習(xí)過程中遇到的困難,從而達到較好的教學(xué)效果。如何針對非計算機專業(yè)的特點,在數(shù)據(jù)結(jié)構(gòu)的講授過程中因?qū)I(yè)施教,激發(fā)學(xué)生的學(xué)習(xí)興趣,仍是一個長期探索的過程。endprint