朱 煥,馬文靜,孫玉梅
(1.黑龍江八一農(nóng)墾大學(xué)理學(xué)院,黑龍江 大慶 163319;2.煙臺市第五中學(xué),山東 煙臺 264000)
《數(shù)據(jù)結(jié)構(gòu)》信息與計算科學(xué)專業(yè)以及計算機應(yīng)用與技術(shù)等專業(yè)的核心課程,是《算法設(shè)計與分析》《操作系統(tǒng)》《數(shù)據(jù)庫原理》及《軟件工程》等課程的主要基礎(chǔ),要令學(xué)生學(xué)會分析研究計算機加工的數(shù)據(jù)結(jié)構(gòu)的特性,以便為應(yīng)用涉及的數(shù)據(jù)選擇適當(dāng)?shù)倪壿嫿Y(jié)構(gòu)、存儲結(jié)構(gòu)及其相應(yīng)的算法,并初步掌握算法的時間分析和空間分析的技術(shù)。[1]然而,《數(shù)據(jù)結(jié)構(gòu)》課程的教學(xué)要求,決定了這門課程有著較強的抽象性和動態(tài)性,學(xué)生對于基本知識還能較好理解,但是在用偽代碼(例如類C語言)對數(shù)據(jù)的存儲結(jié)構(gòu)和算法進行描述時常會產(chǎn)生畏難心理,尤其是涉及到令學(xué)生自己動手編寫算法時,學(xué)生總會感覺到無從下手,和教學(xué)內(nèi)容不能很好地銜接,并且實踐環(huán)節(jié)不夠,學(xué)生難以根據(jù)實際問題動手設(shè)計數(shù)據(jù)結(jié)構(gòu)及其算法,造成學(xué)生動手能力差。[2-3]
鑒于此,在對信息與計算科學(xué)專業(yè)進行《數(shù)據(jù)結(jié)構(gòu)》授課時,將研究重點放在改變《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)模式上,探討研究式教學(xué)模式在《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)及建設(shè)中的應(yīng)用,強調(diào)學(xué)生自主發(fā)現(xiàn)和體驗知識的生成過程,注重理論教學(xué)和實踐教學(xué)的內(nèi)容整合、專業(yè)課教學(xué)與素質(zhì)教育的結(jié)合,有效地提高學(xué)生的學(xué)習(xí)積極性,有利于培養(yǎng)學(xué)生自主學(xué)習(xí)、獨立思考問題和解決問題的能力。
在教學(xué)中增加實際案例,使學(xué)生對抽象的理論問題有著形象深入的理解。在每一章引入時,都盡量在日常生活中選取恰當(dāng)?shù)陌咐?,融入到教學(xué)之中。例如在借助于“兩個朋友共同租用房屋承擔(dān)費用”來講授兩棧共享空間;借助于“去理發(fā)店照兩面相對的鏡子時,會出現(xiàn)許多自己的影像”來講述遞歸;借助于“發(fā)微博時字數(shù)有上限”來講述串的截?。唤柚凇半娢牡木幋a譯碼”來講述赫夫曼樹;借助于“旅行時選擇最合理的線路”來講述圖的最短路徑等。日常生活中這樣的小例子比比皆是,在課堂上引入這些幫助學(xué)生理解的例子,提高了學(xué)生的學(xué)習(xí)興趣,并且?guī)椭鷮W(xué)生對所學(xué)數(shù)據(jù)類型進行理解,使課堂講授內(nèi)容變得不那么枯燥,取得了良好的教學(xué)效果。
改變實驗課模式,提升學(xué)生動手解決實際問題的能力。《數(shù)據(jù)結(jié)構(gòu)》上機實驗的代碼編寫起來較為煩瑣并且抽象,與《C語言》相比有一定的難度,學(xué)生單獨完成存在一定困難,并且實驗內(nèi)容過于單調(diào)。因此,在授課時做了相應(yīng)的調(diào)整。例如將學(xué)生3人一組分為15組,每次做實驗時均以組為單位完成。在進行上機實驗之前,教師先選擇涵蓋不同難度層次的多個上機題目,由學(xué)生決定此次實驗的難度,并由學(xué)生自主選擇實驗題目。如在線性表處進行上機實驗時,選擇了建立線性表、輸出線性表;對線性表進行插入、刪除、查找等基本操作;一元多項式的相加等難度不同的題目由學(xué)生以組為單位自主選擇。在棧的應(yīng)用處進行上機實驗時,選擇了數(shù)值轉(zhuǎn)換、括號匹配,行編輯程序等問題由學(xué)生自主選擇,并且允許學(xué)生選擇其他的題目,也允許不同組學(xué)生在做同一問題時的難易側(cè)重有所不同。
事實證明,這樣的實驗改革效果非常好。往年學(xué)生單獨做實驗時,常常不能保證在上機課時完成實驗,而且出現(xiàn)的問題非常多。而實行新的實驗?zāi)J街?,每組在完成實驗時都可以商議進行,相互之間取長補短,綜合思路,實驗?zāi)芰Υ蟠蠹訌姟S捎诮o了學(xué)生充分自主性去選題,學(xué)生的實驗興趣也大大加強,并且80%的同學(xué)都選擇了中等以上難度的實驗,且完成情況非常好,程序運行出來無誤,容錯性高,界面美觀。
本課程一直采用清華大學(xué)出版社嚴(yán)蔚敏老師編寫的《數(shù)據(jù)結(jié)構(gòu)(C語言版)》作為教材。這是一本非常經(jīng)典的教學(xué)用書,但是書后沒有習(xí)題。鑒于此,上課時改變了留作業(yè)的方式,告訴學(xué)生,這門課程老師不會再給找復(fù)習(xí)資料,考試的時候也沒有復(fù)習(xí)范圍,但是還是要留作業(yè)。作業(yè)的留法,是每章講完之后,都會要求學(xué)生寫題型的數(shù)量。例如棧這部分,要寫5道判斷題、5道填空題、1道算法設(shè)計題、1道算法分析題等。但是什么樣的內(nèi)容作為自己的作業(yè),完全由學(xué)生來選擇,可以去圖書館查閱資料,也可以自己去買相應(yīng)的教學(xué)參考書,也可以在網(wǎng)上找復(fù)習(xí)題。允許同學(xué)間有相同的題上交,但是上交的題重復(fù)率不許超過1/3,否則作業(yè)無效。為了防止學(xué)生直接將習(xí)題抄到作業(yè)上應(yīng)付了事,會在每一節(jié)課留出10分鐘時間,隨機抽取學(xué)生上臺來講述自己所做的內(nèi)容。如果作業(yè)做對了,但是講述不出來,作業(yè)一樣視為無效。這樣一來,更加“迫使”學(xué)生自主去學(xué)習(xí),要交作業(yè),必須自己查閱資料完成,這樣也就養(yǎng)成了學(xué)生獨立思考問題、解決問題的能力。
在講述第六章“樹”時,為了提高學(xué)生解決實際問題的能力,選取了一個綜合問題,即要建立一棵家族樹,并對家族樹進行相關(guān)操作。為了提高學(xué)生的學(xué)習(xí)興趣,以《紅樓夢》賈府中賈氏成員的家族關(guān)系為例,要學(xué)生完成此綜合設(shè)計。
具體實施步驟為:將所要完成的設(shè)計分為15個子問題,以平時上機時學(xué)生分組為單位,每組選擇一個問題,分別完成,最后匯總,完成此綜合問題。其中,第一組要決定這棵家族樹的存儲方式、結(jié)點類型以及抽象數(shù)據(jù)類型定義;第15組要完成所有子問題在主函數(shù)中的鏈接,并設(shè)計主函數(shù);其他各組各自完成選擇的問題,調(diào)試無誤后均交與第15組最后進行匯總。
學(xué)生對解決此問題非常有熱情也有興趣。在上機解決問題之前,教師安排了一次教學(xué)觀摩課,要求每一組均把流程圖繪制出來,并選出代表上臺向大家講解各組的思路,出現(xiàn)問題時現(xiàn)場解答。每一組學(xué)生準(zhǔn)備都較為充分,但是在設(shè)計算法時或多或少都出現(xiàn)了一些問題。通過本節(jié)課,指出了學(xué)生中存在的共性問題,并及時給予修改,教學(xué)效果良好。
實踐證明,研究性教學(xué)模式重視學(xué)生的自主活動,提供并創(chuàng)造了學(xué)生主動探究、獨立操作、自由表達的“土壤”以及良好的氛圍,學(xué)生在其中創(chuàng)新和實踐,建立了一種主動發(fā)現(xiàn)、獨立思考的積極的學(xué)習(xí)方式,實現(xiàn)了學(xué)習(xí)方式的轉(zhuǎn)變。[4-5]因此,結(jié)合人才培養(yǎng)實際和教學(xué)現(xiàn)狀,在《數(shù)據(jù)結(jié)構(gòu)》課程中引入研究性教學(xué)模式,能提高學(xué)生的學(xué)習(xí)興趣,有效引導(dǎo)學(xué)生主動投入到研究性學(xué)習(xí)活動中給學(xué)生提供開放的學(xué)習(xí)空間,有利于發(fā)現(xiàn)和開發(fā)學(xué)生多方面的智慧潛能。
[1]李克清.《數(shù)據(jù)結(jié)構(gòu)》課程中的案例教學(xué)初探[J].長江大學(xué)學(xué)報:自然科學(xué)版,2004,(12):135-136.
[2]龐曉瓊.案例驅(qū)動的數(shù)據(jù)結(jié)構(gòu)課程設(shè)計教學(xué)改革實踐[J].計算機教育,2009,(1):53-55.
[3]馬曉波,陳翠茹.《數(shù)據(jù)結(jié)構(gòu)》實踐教學(xué)改革探討[J].內(nèi)蒙古農(nóng)業(yè)大學(xué)學(xué)報:社會科學(xué)版,2010,(2):171-172.
[4]陳曉霞.數(shù)據(jù)結(jié)構(gòu)教學(xué)中的案例巧用[J].計算機教育,2010,(24):61-64.
[5]湯亞玲,秦鋒.數(shù)據(jù)結(jié)構(gòu)課程的教學(xué)引導(dǎo)策略探討[J].安徽工業(yè)大學(xué)學(xué)報:社會科學(xué)版,2011,(5):119-120.