摘要:本文在分析當(dāng)前“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)主要問題的基礎(chǔ)上,提出了以教學(xué)為基礎(chǔ)、實(shí)訓(xùn)為手段、競(jìng)賽為激勵(lì)機(jī)制的“數(shù)據(jù)結(jié)構(gòu)”課程三位一體教學(xué)模式。
關(guān)鍵詞:數(shù)據(jù)結(jié)構(gòu);教學(xué)模式;實(shí)訓(xùn);競(jìng)賽;動(dòng)態(tài)演示
中圖分類號(hào):G642文獻(xiàn)標(biāo)識(shí)碼:B
本研究基于多媒體平臺(tái)進(jìn)行“數(shù)據(jù)結(jié)構(gòu)”實(shí)訓(xùn)教學(xué),致力于建立“數(shù)據(jù)結(jié)構(gòu)”課程以教學(xué)為基礎(chǔ)、實(shí)訓(xùn)為手段、競(jìng)賽為激勵(lì)機(jī)制的三位一體教學(xué)模式,運(yùn)用多媒體等現(xiàn)代化教學(xué)手段提高教學(xué)效果,為參加全國(guó)大學(xué)生數(shù)學(xué)建模、ACM等國(guó)家級(jí)、國(guó)際級(jí)競(jìng)賽進(jìn)行人才儲(chǔ)備,并對(duì)學(xué)生進(jìn)一步學(xué)習(xí)計(jì)算機(jī)領(lǐng)域的其他課程、今后從事理論研究、應(yīng)用開發(fā)及技術(shù)管理工作發(fā)揮重要作用。
1國(guó)內(nèi)外研究現(xiàn)狀
目前國(guó)內(nèi)外對(duì)“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)改革的研究主要基于以下幾方面。
(1) 教學(xué)內(nèi)容:設(shè)立了以算法為核心、以應(yīng)用為驅(qū)動(dòng)的教學(xué)主線。在算法介紹上注重對(duì)問題求解過程的理解,注重算法設(shè)計(jì)思路和分析過程的講解,對(duì)于每個(gè)算法都給出了邏輯步驟,力圖培養(yǎng)學(xué)生的抽象思維能力和開放性思維方式。

(2) 教學(xué)手段:現(xiàn)代化多媒體教學(xué)與傳統(tǒng)教學(xué)方式綜合使用,已成為深化教學(xué)改革的一種有效手段。多媒體教學(xué)法具有知識(shí)信息量大、內(nèi)容豐富生動(dòng)的特點(diǎn),多媒體教學(xué)在教案設(shè)計(jì)、備課方法、上課方式等方面帶來了教學(xué)觀念、教學(xué)思想和教學(xué)方法的變化。
(3) 教材體系:改變傳統(tǒng)單一依賴一本教材的模式,參考國(guó)內(nèi)外經(jīng)典教材,自編集教材、實(shí)驗(yàn)指導(dǎo)、習(xí)題解析、案例指導(dǎo)等為一體的多層次、立體化教材體系。
(4) 教學(xué)環(huán)境:建立“講壇、網(wǎng)壇、論壇”多平臺(tái)緊密結(jié)合的教學(xué)環(huán)境。
雖然目前“數(shù)據(jù)結(jié)構(gòu)”教學(xué)中,基本普及了現(xiàn)代化教學(xué)手段的應(yīng)用,但在課件制作的水平方面、在使用課件的尺度把握方面,還存在一些問題,以至于把課堂變成純粹的計(jì)算機(jī)媒體演示室,學(xué)生也是走馬觀花,不知所云,無法達(dá)到預(yù)期的教學(xué)效果。另外多數(shù)研究對(duì)教學(xué)實(shí)踐環(huán)節(jié)沒有提出較好的理論指導(dǎo),實(shí)踐方面的素材相對(duì)貧乏,致使教學(xué)過程中理論與實(shí)踐相脫節(jié),學(xué)生缺乏解決實(shí)際問題的能力,只會(huì)是紙上談兵。
作者多年從事計(jì)算機(jī)本科專業(yè)“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)工作,該課程2006年被確立為河北省精品課程,所開發(fā)的“數(shù)據(jù)結(jié)構(gòu)動(dòng)態(tài)算法演示”系統(tǒng)獲得第三屆全國(guó)高等學(xué)校計(jì)算機(jī)課件評(píng)比大賽一等獎(jiǎng)。
2三位一體教學(xué)模式
縱觀該體系結(jié)構(gòu),由下至上分為三層,分別是基礎(chǔ)設(shè)施層、教學(xué)實(shí)踐層和能力提升層。基礎(chǔ)設(shè)施層是整個(gè)系統(tǒng)的基石,它包含電子教案、算法動(dòng)態(tài)演示系統(tǒng)和實(shí)訓(xùn)題庫(kù)。教學(xué)過程中教師依托電子教案進(jìn)行基礎(chǔ)知識(shí)講解,通過算法動(dòng)態(tài)演示系統(tǒng)形象表現(xiàn)算法運(yùn)行過程,動(dòng)靜結(jié)合,加強(qiáng)學(xué)生對(duì)算法的理解和掌握。實(shí)訓(xùn)題庫(kù)是實(shí)踐環(huán)節(jié)的主要素材,它由基礎(chǔ)實(shí)驗(yàn)、設(shè)計(jì)實(shí)驗(yàn)、綜合實(shí)驗(yàn)組成。在扎實(shí)的教學(xué)和豐富的實(shí)驗(yàn)基礎(chǔ)上,組織學(xué)生進(jìn)行不同級(jí)別的競(jìng)賽活動(dòng),激發(fā)學(xué)生潛能,培養(yǎng)學(xué)生解決實(shí)際問題能力和團(tuán)隊(duì)協(xié)作精神。
2.1多媒體教學(xué)平臺(tái)
就“數(shù)據(jù)結(jié)構(gòu)”而言,由于一些理論知識(shí)較抽象,單純的電子教案在教學(xué)過程中無法將理論知識(shí)直觀地表現(xiàn)出來,理解起來非常困難,教學(xué)難度較大,所以要改變以往“老師在上面念幻燈片,學(xué)生在下面匆忙記筆記”的教學(xué)方式,建立多媒體教學(xué)平臺(tái),制作算法的動(dòng)態(tài)演示系統(tǒng),生動(dòng)、形象地描繪算法執(zhí)行的動(dòng)態(tài)變化過程,從而激發(fā)學(xué)生在課堂教學(xué)過程中的參與積極性,提高教學(xué)效果。
“數(shù)據(jù)結(jié)構(gòu)算法動(dòng)態(tài)演示系統(tǒng)”內(nèi)容主要是關(guān)于數(shù)據(jù)結(jié)構(gòu)經(jīng)典算法的動(dòng)態(tài)演示,制作過程中參考了國(guó)內(nèi)外“數(shù)據(jù)結(jié)構(gòu)”課程經(jīng)典教材,結(jié)果匯集了“數(shù)據(jù)結(jié)構(gòu)”課程眾多的算法,該系統(tǒng)是在Visual Studio.net 2005集成開發(fā)環(huán)境下基于最新的面向?qū)ο笳Z(yǔ)言C#開發(fā)完成,利用.Net Framework平臺(tái),類型安全,可移植性強(qiáng)。系統(tǒng)的主要特點(diǎn)有:
(1) 實(shí)現(xiàn)算法代碼的執(zhí)行與動(dòng)態(tài)圖形演示相同步,描繪了算法執(zhí)行的動(dòng)態(tài)變化過程,并可實(shí)時(shí)觀察系統(tǒng)堆棧和算法中變量的變化過程,生動(dòng)、形象,加深了學(xué)生對(duì)算法的理解程度。
(2) 利用多線程編程技術(shù),可隨用戶需要,隨時(shí)暫停、繼續(xù)算法運(yùn)行過程,用戶可及時(shí)調(diào)整數(shù)據(jù),自行控制算法的執(zhí)行速度,根據(jù)個(gè)人的進(jìn)度需要控制算法執(zhí)行的進(jìn)程。
(3) 提供了算法實(shí)現(xiàn)的C++源代碼,既可輔助教師進(jìn)行自主教學(xué),又可幫助學(xué)生自主學(xué)習(xí),尤其對(duì)學(xué)生上機(jī)實(shí)踐具有指導(dǎo)作用。

圖2所示是“數(shù)據(jù)結(jié)構(gòu)”經(jīng)典算法“走迷宮”的動(dòng)態(tài)運(yùn)行過程。整個(gè)界面分為控制區(qū)和演示區(qū),控制區(qū)包含若干按鈕,主要完成數(shù)據(jù)的輸入和算法執(zhí)行過程的控制。演示區(qū)從左至右分別是圖形演示區(qū)、代碼演示區(qū)和堆棧演示區(qū),生動(dòng)的描繪出算法執(zhí)行的每一步系統(tǒng)狀態(tài)和堆棧情況。通過控制按鈕,學(xué)習(xí)者可以改變迷宮樣式、調(diào)節(jié)算法執(zhí)行的速度以便于觀察。
2.2上機(jī)實(shí)訓(xùn)綜合實(shí)踐教學(xué)體系
“數(shù)據(jù)結(jié)構(gòu)”是一門實(shí)踐性很重的課程,實(shí)踐環(huán)節(jié)要根據(jù)一個(gè)知識(shí)點(diǎn)形成由基礎(chǔ)實(shí)驗(yàn)(點(diǎn))→ 設(shè)計(jì)實(shí)驗(yàn)(線)→ 綜合實(shí)驗(yàn)(面)一體化多層次的實(shí)踐教學(xué)體系。基礎(chǔ)實(shí)驗(yàn)是將理論課上講的抽象數(shù)據(jù)類型上機(jī)編程實(shí)現(xiàn),在實(shí)現(xiàn)的過程中,深刻理解抽象數(shù)據(jù)類型和類之間的關(guān)系、算法設(shè)計(jì)和程序?qū)崿F(xiàn)之間的關(guān)系、問題描述和成員函數(shù)之間的關(guān)系;設(shè)計(jì)實(shí)驗(yàn)是在基礎(chǔ)實(shí)驗(yàn)的基礎(chǔ)上,給出面向?qū)嶋H應(yīng)用的實(shí)踐題目,由學(xué)生自己設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)、定義類、實(shí)現(xiàn)類,從而解決該實(shí)際問題,這樣將幾個(gè)知識(shí)點(diǎn)連接起來,自己設(shè)計(jì)解決一個(gè)小的問題;綜合實(shí)驗(yàn)是給出面向?qū)嶋H應(yīng)用的稍大一些的實(shí)踐題目,由學(xué)生自己分析問題,設(shè)計(jì)幾個(gè)數(shù)據(jù)結(jié)構(gòu)并探究他們之間的關(guān)系,定義幾個(gè)類并實(shí)現(xiàn),此外,還需要一些類外的函數(shù),進(jìn)而解決這個(gè)稍大的實(shí)踐題目。
2.3多層次競(jìng)賽機(jī)制
競(jìng)賽能激發(fā)人的潛能,通過組織各種級(jí)別的競(jìng)賽,強(qiáng)化學(xué)生對(duì)基礎(chǔ)知識(shí)的掌握,培養(yǎng)學(xué)生的團(tuán)隊(duì)協(xié)作精神,提高他們解決實(shí)際問題的能力。
競(jìng)賽按照規(guī)模分為初級(jí)、中級(jí)和高級(jí)。初級(jí)競(jìng)賽主要指班級(jí)內(nèi)部競(jìng)賽,主要題目來自于實(shí)訓(xùn)題庫(kù)的綜合實(shí)驗(yàn)。班級(jí)內(nèi)三至五個(gè)人為一小組,分工協(xié)作,在規(guī)定時(shí)間內(nèi)完成給定題目。初級(jí)競(jìng)賽組織形式簡(jiǎn)單,相對(duì)頻度可以高一些,難度和強(qiáng)度要適中,既能強(qiáng)化對(duì)知識(shí)點(diǎn)的鞏固,又能充分發(fā)揮學(xué)生的主觀能動(dòng)性,享受解決問題的成就感。中級(jí)競(jìng)賽指校際間同專業(yè)學(xué)生的比賽。通過初級(jí)比賽可以遴選出一些較有實(shí)力的參賽隊(duì)參加中級(jí)比賽,加強(qiáng)校際間的學(xué)術(shù)交流與合作。因?yàn)橐婕暗絽①悓W(xué)校的協(xié)作,所以建議中級(jí)比賽每年舉辦一到兩次。高級(jí)競(jìng)賽主要指全國(guó)及其以上規(guī)模的比賽,如數(shù)學(xué)建模競(jìng)賽和ACM大賽。
自實(shí)施“數(shù)據(jù)結(jié)構(gòu)”三位一體教學(xué)模式以來,我專業(yè)學(xué)生在各類比賽中的成績(jī)穩(wěn)步上升。07年數(shù)學(xué)建模比賽中全國(guó)一等獎(jiǎng)1名,省一等獎(jiǎng)、二等獎(jiǎng)多名;ACM程序設(shè)計(jì)大賽06年西安賽區(qū)取得第29名,07年成都賽區(qū)取得第32名。
3結(jié)束語(yǔ)
本課題的特色及創(chuàng)新點(diǎn)就是理論與實(shí)踐并重、教學(xué)與實(shí)訓(xùn)并舉,通過多媒體等現(xiàn)代化教學(xué)手段,全方位、立體化地對(duì)“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)進(jìn)行包裝,提升其教學(xué)效果。課題的研究成果可被用于計(jì)算機(jī)專業(yè)“數(shù)據(jù)結(jié)構(gòu)”必修課程及其他相關(guān)理工專業(yè)“數(shù)據(jù)結(jié)構(gòu)”選修課程的教學(xué)實(shí)踐。所包含的知識(shí)與提倡的技術(shù)方法,無論對(duì)進(jìn)一步學(xué)習(xí)計(jì)算機(jī)領(lǐng)域的其他課程,還是對(duì)今后從事理論研究、應(yīng)用開發(fā)及技術(shù)管理工作都發(fā)揮著重要的作用。
參考文獻(xiàn):
[1] 馬燕. 關(guān)于“數(shù)據(jù)結(jié)構(gòu)”教學(xué)模式改革的探索與實(shí)踐[J]. 教育與職業(yè),2007,(2).
[2] 張恩勝,婁雅斌,顧紅生. 數(shù)據(jù)結(jié)構(gòu)教學(xué)改革初探[J].“鞍山師范學(xué)院學(xué)報(bào)”,2005,7(6).
[3] 殷人坤,鄧俊輝. 清華大學(xué)“數(shù)據(jù)結(jié)構(gòu)”精品課程建設(shè)[J].“計(jì)算機(jī)教育”,2006,(5).
[4] 程滿玲. 創(chuàng)新數(shù)據(jù)結(jié)構(gòu)的教學(xué)模式 探索課程改革的新思路[J]. 考試周刊,2007,(23).
[5] 張榮博,梁文靜. 非計(jì)算機(jī)專業(yè)“數(shù)據(jù)結(jié)構(gòu)”教學(xué)研究探討[J]. 科技信息,2006,(5).
[6] 李治軍,廖明宏,張巖. 數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計(jì)教學(xué)模式的探討[J]. 計(jì)算機(jī)教育,2006,(2).