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