李東暉 申聰 戴小鵬 王奕
【摘要】數(shù)據(jù)結(jié)構(gòu)是計算機(jī)科學(xué)與技術(shù)專業(yè)中的一門核心課程,知識點(diǎn)多,課時少,并且難以理解,本文從數(shù)據(jù)結(jié)構(gòu)的實(shí)踐性課程現(xiàn)狀出發(fā),結(jié)合數(shù)據(jù)結(jié)構(gòu)知識點(diǎn)的脈絡(luò)分析,提出實(shí)踐性教學(xué)在課程實(shí)驗(yàn)、課程設(shè)計和畢業(yè)設(shè)計的教學(xué)模式,構(gòu)建了數(shù)據(jù)結(jié)構(gòu)實(shí)踐教學(xué)的教學(xué)設(shè)計。為數(shù)據(jù)結(jié)構(gòu)課程的實(shí)踐性教學(xué)體系與教學(xué)設(shè)計提供了參考方向。
【關(guān)鍵詞】數(shù)據(jù)結(jié)構(gòu) 實(shí)踐教學(xué) 教學(xué)設(shè)計
【中圖分類號】G642 【文獻(xiàn)標(biāo)識碼】A 【文章編號】2095-3089(2017)33-0034-03
一、引言
隨著教學(xué)體系的改革[1],數(shù)據(jù)結(jié)構(gòu)的教育教學(xué)也備受計算機(jī)專業(yè)的相關(guān)教育者關(guān)注,數(shù)據(jù)結(jié)構(gòu)是計算機(jī)專業(yè)的一門必修課程,學(xué)生對于數(shù)據(jù)結(jié)構(gòu)課程知識的掌握程度直接關(guān)系到專業(yè)知識的整體學(xué)習(xí)進(jìn)度,而數(shù)據(jù)結(jié)構(gòu)的課程具有難度大,知識點(diǎn)多,實(shí)踐能力要求高等特點(diǎn),在教學(xué)過程中產(chǎn)生了很多的問題。其中,實(shí)踐課程教學(xué)體系的建設(shè)尤為突出,目前數(shù)據(jù)結(jié)構(gòu)實(shí)踐教學(xué)體系存在諸多問題,學(xué)生不能夠利用好實(shí)踐課程,導(dǎo)致實(shí)踐課程沒有發(fā)揮其應(yīng)有的價值,教師也無法給予實(shí)踐課程準(zhǔn)確的定位,實(shí)踐課程的利用率遠(yuǎn)不及理論課程,針對這種現(xiàn)狀,本文從實(shí)踐性教學(xué)的現(xiàn)狀出發(fā),到實(shí)踐性教學(xué)培養(yǎng)模式,提出了一套完整的方案,為實(shí)踐性教學(xué)提供了參考依據(jù)。
二、數(shù)據(jù)結(jié)構(gòu)實(shí)踐性教學(xué)
1.實(shí)踐性教學(xué)的現(xiàn)狀分析
數(shù)據(jù)結(jié)構(gòu)的教育教學(xué)本身存在教學(xué)難度大的特點(diǎn)[2],其實(shí)踐教學(xué)體系的難度更為突出,其中主要存在的問題有如下幾點(diǎn):
(1)課程知識點(diǎn)多,知識點(diǎn)難度大,教師在規(guī)定的時間難以把一個復(fù)雜的問題講解透徹,學(xué)生難跟上老師的上課進(jìn)度,導(dǎo)致課堂效率不高,知識點(diǎn)掌握不牢,實(shí)踐課程沒法開展。
(2)學(xué)生自身的個體差異大,因材施教的策略只能適用于小范圍的學(xué)生群體,對于整個計算機(jī)及其相關(guān)專業(yè)學(xué)生群體因材施教比較困難,教師無法根據(jù)每一個人的掌握程度來展開教學(xué),因此,這種情況會犧牲少部分學(xué)生的上課進(jìn)度,制約了實(shí)踐教學(xué)計劃的開展。
(3)學(xué)生普遍存在程序設(shè)計類課程掌握不好的問題,學(xué)生學(xué)習(xí)C語言和Windows程序設(shè)計的過程中,對于程序設(shè)計類的課程容易產(chǎn)生畏懼和抵觸的情緒,學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的設(shè)計類的問題時,往往有逃避的心態(tài),不會積極主動的解決數(shù)據(jù)結(jié)構(gòu)課程設(shè)計中遇到的問題。
(4)學(xué)生對實(shí)驗(yàn)課不夠重視,大部分學(xué)生的觀念還停留在只要考試能夠考好就行,其他的都不重要,這種片面性的學(xué)習(xí)觀念在大學(xué)的學(xué)習(xí)過程中嚴(yán)重的制約了學(xué)生的動手能力的強(qiáng)化,會導(dǎo)致學(xué)生只為讀書而讀書,沒有動手能力,走向社會很難適應(yīng)。
(5)考核機(jī)制不夠完善,大部分學(xué)校的數(shù)據(jù)結(jié)構(gòu)的課程設(shè)計僅僅通過提交相應(yīng)項目的計劃書和源代碼作為評分標(biāo)準(zhǔn),學(xué)生容易鉆考核辦法的漏洞,用走捷徑的辦法最后也獲得了高分,考核方式的不完善嚴(yán)重制約學(xué)生實(shí)踐性課程的能力的提高。
2.數(shù)據(jù)結(jié)構(gòu)課程知識點(diǎn)脈絡(luò)分析
數(shù)據(jù)結(jié)構(gòu)是計算機(jī)專業(yè)的一門必修課程,知識點(diǎn)多,難度大是其主要特點(diǎn)[3]。課內(nèi)時間教學(xué)一般作為課堂教學(xué)的輔助手段,為加強(qiáng)學(xué)生對于知識點(diǎn)的掌握,設(shè)計能力的提高以及創(chuàng)新思維的培養(yǎng),因此,必須要搞清楚數(shù)據(jù)結(jié)構(gòu)課程知識點(diǎn)的脈絡(luò),大部分?jǐn)?shù)據(jù)結(jié)構(gòu)的教材上主要把數(shù)據(jù)結(jié)構(gòu)的知識點(diǎn)分為四大快內(nèi)容:線性結(jié)構(gòu),非線性結(jié)構(gòu),查找算法,排序算法。
線性結(jié)構(gòu)主要是針對線性表、棧、隊列、串、數(shù)組和廣義表等相關(guān)知識的學(xué)習(xí),其中線性表是貫穿整個線性結(jié)構(gòu)的基礎(chǔ),其具體的關(guān)系如下:
由于課時的限制,教學(xué)計劃中對于線性結(jié)構(gòu)的數(shù)組和廣義表的實(shí)踐性課程沒有安排,但是線性表的實(shí)踐性課程有課時保障,這是線性表是整個線性結(jié)構(gòu)基礎(chǔ)的原因。
非線性結(jié)構(gòu)主要是樹和圖的學(xué)習(xí),書是圖的特殊情況,圖是樹擴(kuò)展的形式,非線性的結(jié)構(gòu)的知識脈絡(luò)圖如下:
非線性結(jié)構(gòu)中的樹和圖都是數(shù)據(jù)結(jié)構(gòu)中的重點(diǎn),樹當(dāng)中的內(nèi)容主要有:二叉樹,森林,哈夫曼樹等,圖的內(nèi)容有圖的遍歷、存儲和應(yīng)用,其中的每一個知識點(diǎn)都有對應(yīng)的實(shí)踐課程。
查找也稱為檢索、查詢。在日常生活中,經(jīng)常會有查詢的情況出現(xiàn),在計算機(jī)中顯得尤為突出,其中,數(shù)據(jù)結(jié)構(gòu)對于查找算法進(jìn)行了詳細(xì)的講解和分析,其主要查找算法如下:
查找的算法比較多,在實(shí)際運(yùn)用的過程中,往往根據(jù)實(shí)際需要采取最優(yōu)的查找算法,實(shí)踐教學(xué)中,大部分教學(xué)計劃中也只會對部分查找算法要求熟練掌握,部分算法也只做了解。
排序算法在計算機(jī)語言中非常常見,如何進(jìn)行高效的排序,是計算機(jī)中研究的重要問題,排序算法主要包括直接插入排序,冒泡排序,選擇排序,希爾排序,快速排序,堆排序,歸并排序和基數(shù)排序等算法。排序算法部分能力的提高很大程度依賴于學(xué)生對于線性表的掌握程度,排序算法的熟練掌握是建立在線性表的熟練掌握的基礎(chǔ)之上,因此,想要學(xué)號排序算法,必須要有線性表的基礎(chǔ)。
3.實(shí)踐性教學(xué)的教學(xué)模式
(1)課程實(shí)驗(yàn)
1)驗(yàn)證性實(shí)驗(yàn)
驗(yàn)證性實(shí)驗(yàn)是指對研究對象有一定了解,并形成一定認(rèn)識或提出了某種假說,為驗(yàn)證這種認(rèn)識或假說是否正確而進(jìn)行的一種實(shí)驗(yàn)[4]。在數(shù)據(jù)結(jié)構(gòu)的實(shí)踐性教學(xué)過程中,驗(yàn)證性教學(xué)占據(jù)比較大的比重,學(xué)生的學(xué)習(xí)初期,受專業(yè)知識限制不具備較強(qiáng)的實(shí)驗(yàn)?zāi)芰?,基于這種情況,數(shù)據(jù)結(jié)構(gòu)中大部分實(shí)驗(yàn)為驗(yàn)證性實(shí)驗(yàn),如約瑟夫環(huán)的問題,漢諾塔問題等。
2)設(shè)計性實(shí)驗(yàn)
設(shè)計性實(shí)驗(yàn)是采用科學(xué)的邏輯思維配合實(shí)驗(yàn)方法和技術(shù),對擬定研究的目的(或問題)進(jìn)行的一種有明確目的的探索性研究[5]。數(shù)據(jù)結(jié)構(gòu)中的設(shè)計性實(shí)驗(yàn)對于學(xué)生能力的培養(yǎng)起著重要作用,不僅僅是對于理論知識實(shí)踐化的能力的建立,更重要的是學(xué)生知識的綜合運(yùn)用能力的建立和培養(yǎng)。數(shù)據(jù)結(jié)構(gòu)的實(shí)踐性課程中有很多設(shè)計性實(shí)驗(yàn),比如構(gòu)造哈夫曼編碼,拓?fù)渑判虻仁浅R姷脑O(shè)計性實(shí)驗(yàn)。
3)綜合性實(shí)驗(yàn)
綜合性實(shí)驗(yàn),就是在實(shí)驗(yàn)過程中,要使用到多種實(shí)驗(yàn)技術(shù),已完成最終的實(shí)驗(yàn)?zāi)康腫6]。綜合性實(shí)驗(yàn)對于學(xué)生的要求較高,需要在平時的驗(yàn)證性實(shí)驗(yàn)和設(shè)計性實(shí)驗(yàn)的過程中學(xué)會融會貫通,得到適用于學(xué)生的知識體系,在達(dá)到這種要求之后,對于綜合性實(shí)驗(yàn),學(xué)生才能按時按質(zhì)完成任務(wù)。在數(shù)據(jù)結(jié)構(gòu)的實(shí)踐性教學(xué)的過程中常見的綜合性實(shí)驗(yàn)主要有:用哈夫曼碼實(shí)現(xiàn)文件壓縮,編譯器的設(shè)計與實(shí)現(xiàn)等。
(2)課程設(shè)計
課程設(shè)計是完成一門課程以后,對該課程的知識綜合檢測的一個常用方法,在數(shù)據(jù)結(jié)構(gòu)中,課程設(shè)計是教學(xué)大綱當(dāng)中的必修環(huán)節(jié),數(shù)據(jù)結(jié)構(gòu)的課程設(shè)計屬于綜合性實(shí)驗(yàn)的范疇,學(xué)生需要對于數(shù)據(jù)結(jié)構(gòu)的理論知識達(dá)到教學(xué)要求以后,才能完成相應(yīng)的課程設(shè)計,課程設(shè)計是實(shí)踐教學(xué)中重要的部分,為鍛煉學(xué)生的實(shí)踐操作能力具有強(qiáng)大的生命力。
(3)畢業(yè)設(shè)計
畢業(yè)設(shè)計是教學(xué)過程的最后階段采用的一種總結(jié)性的實(shí)踐教學(xué)環(huán)節(jié)[7]。通過畢業(yè)設(shè)計,學(xué)生可以綜合應(yīng)用所學(xué)的各種理論知識和技能,進(jìn)行全面、系統(tǒng)、嚴(yán)格的技術(shù)及基本能力的練習(xí)。數(shù)據(jù)結(jié)構(gòu)的相關(guān)知識在畢業(yè)設(shè)計中必不可少,是和其他專業(yè)知識的有機(jī)結(jié)合才能達(dá)到教學(xué)大綱中需要的畢業(yè)設(shè)計的要求,畢業(yè)設(shè)計已經(jīng)不僅停留在對于數(shù)據(jù)結(jié)構(gòu)這一門課程的熟練掌握的程度之上,更還要同其他課程知識結(jié)合,具有更高的要求。
3、數(shù)據(jù)結(jié)構(gòu)實(shí)踐教學(xué)的教學(xué)設(shè)計
1.科學(xué)設(shè)計實(shí)驗(yàn)學(xué)時
大部分高校存在對于實(shí)驗(yàn)課程課時安排不夠的問題,對于數(shù)據(jù)結(jié)構(gòu)這一門課程,實(shí)驗(yàn)課程應(yīng)該要達(dá)到40課時,而大部分高校僅安排30課時,甚至20課時,實(shí)驗(yàn)學(xué)時的嚴(yán)重缺失在一定程度上導(dǎo)致了數(shù)據(jù)結(jié)構(gòu)這門課程學(xué)生掌握程度不夠,諸多問題也會隨之顯現(xiàn)。同時,實(shí)驗(yàn)學(xué)時對于每一部分的知識點(diǎn)的分配也不盡合理,筆者建議,數(shù)據(jù)結(jié)構(gòu)的各知識點(diǎn)的學(xué)時分配應(yīng)該如下表所示。
2.實(shí)驗(yàn)題目分層次
實(shí)驗(yàn)的題目分層次是數(shù)據(jù)結(jié)構(gòu)的實(shí)踐教學(xué)的教學(xué)設(shè)計中的重要組成部分[8],學(xué)生的自身的能力和對不同的知識的掌握程度不一樣,不能夠?qū)τ谒械膶W(xué)生是同一套教學(xué)模式,同理,不能夠在實(shí)踐教學(xué)的過程中對于所有的同學(xué)采用同一個題目,因此,實(shí)驗(yàn)題目應(yīng)該根據(jù)學(xué)生的能力分層次,不同的學(xué)生對于實(shí)驗(yàn)題目的需求也不一定相同,實(shí)驗(yàn)題目分層次對于學(xué)生的整體培養(yǎng)和因材施教是具有促進(jìn)作用的。
3.實(shí)驗(yàn)報告規(guī)范化
實(shí)驗(yàn)報告的規(guī)范化一方面在對學(xué)生的對于階段性學(xué)習(xí)成果的知識點(diǎn)總結(jié),同樣可以培養(yǎng)學(xué)生文檔的整理能力和和規(guī)范化的思維,數(shù)據(jù)結(jié)構(gòu)傳達(dá)給學(xué)生的不只是停留在書本上的知識點(diǎn)的掌握,更是一種思維模式的培養(yǎng),在學(xué)生完成本科學(xué)習(xí)之后,進(jìn)行下一階段的學(xué)習(xí)或者直接走向工作崗位,思維模式的培養(yǎng)往往比專業(yè)知識更加重要,在數(shù)據(jù)結(jié)構(gòu)這門課程中,就可以通過實(shí)驗(yàn)報告規(guī)范化來做初步的鍛煉。
四、總結(jié)
數(shù)據(jù)結(jié)構(gòu)實(shí)踐教學(xué)體系與教學(xué)設(shè)計是貫穿于整個數(shù)據(jù)結(jié)構(gòu)的教學(xué)過程中[9],實(shí)踐性教學(xué)的研究會隨著計算機(jī)技術(shù)的發(fā)展和數(shù)據(jù)結(jié)構(gòu)課程的重視達(dá)到最佳狀態(tài),本文從這種角度,分析了數(shù)據(jù)結(jié)構(gòu)的實(shí)踐性教學(xué)的教學(xué)現(xiàn)狀,總結(jié)了實(shí)踐性教學(xué)的教學(xué)模式,最后提出數(shù)據(jù)結(jié)構(gòu)實(shí)踐性教學(xué)的教學(xué)設(shè)計,無論從課程體系的改革層面還是從學(xué)生的培養(yǎng)模式層面來說,都具有非常重要的指導(dǎo)意義。
參考文獻(xiàn):
[1]李冬梅, 孟偉. “數(shù)據(jù)結(jié)構(gòu)”課程的教學(xué)改革與教材建設(shè)[J]. 計算機(jī)教育, 2012(14):38-41.
[2]董麗薇.“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)方法的改進(jìn)[J]. 沈陽師范大學(xué)學(xué)報(自然科學(xué)版), 2012, 30(2):307-309.
[3]李東暉,戴小鵬,陳墾.概念圖在數(shù)據(jù)結(jié)構(gòu)教學(xué)中的應(yīng)用研究[J]. 湖南農(nóng)業(yè)大學(xué)學(xué)報:社會科學(xué)版, 2008(2):68-69.
[4] Sirotová M, Fr?dková E. Supervised Practice Teaching in Higher Education of Future Teachers[J]. International Journal on Language Literature & Culture in Education, 2016, 3(2).
[5]劉越暢, 鐘秀玉, 鐘治初,等. 數(shù)據(jù)結(jié)構(gòu)課程工程化實(shí)驗(yàn)教學(xué)的探索和實(shí)踐[J]. 實(shí)驗(yàn)室研究與探索, 2012, v.31;No.198(8):350-352.
[6]沈華. 數(shù)據(jù)結(jié)構(gòu)課內(nèi)實(shí)踐教學(xué)方案[J]. 實(shí)驗(yàn)室研究與探索, 2013(10):412-416.
[7] Liu Y X, Zhang N Z. The Construction and Practice on Practical Teaching System of Chemical Engineering Specialty in Higher Education[J]. Advanced Materials Research, 2014, 1033-1034(91):1395-1398.
[8]張銘, 耿國華, 陳衛(wèi)衛(wèi),等. 數(shù)據(jù)結(jié)構(gòu)與算法課程教學(xué)實(shí)施方案[J]. 中國大學(xué)教學(xué), 2011(3):56-60.
[9]劉曉靜, 王曉英, 張玉安,等. 以創(chuàng)新人才培養(yǎng)為目標(biāo)的數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)改革[J]. 實(shí)驗(yàn)技術(shù)與管理, 2014, 31(11):184-187.