陜西服裝工程學(xué)院 付向艷
《數(shù)據(jù)結(jié)構(gòu)》課程是計(jì)算機(jī)專業(yè)中一門重要的專業(yè)基礎(chǔ)必修課,用計(jì)算機(jī)來解決實(shí)際問題時,就要涉及到數(shù)據(jù)的表示存儲及其數(shù)據(jù)處理,而數(shù)據(jù)表示及數(shù)據(jù)處理正是《數(shù)據(jù)結(jié)構(gòu)》課程的主要研究對象。它為操作系統(tǒng)、數(shù)據(jù)庫原理、編譯原理、單片機(jī)原理等后續(xù)專業(yè)課程的學(xué)習(xí)奠定了基礎(chǔ)。
《數(shù)據(jù)結(jié)構(gòu)》課程的教學(xué)目標(biāo)是全面系統(tǒng)地介紹數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)和算法實(shí)現(xiàn),并介紹常用的非數(shù)值計(jì)算方法,如數(shù)據(jù)插入、刪除、排序、查找檢索等,使學(xué)生掌握各種數(shù)據(jù)結(jié)構(gòu)的特點(diǎn)和算法思想,并能結(jié)合具體應(yīng)用,運(yùn)用各種數(shù)據(jù)結(jié)構(gòu)和算法解決實(shí)際問題。但大部分高?!稊?shù)據(jù)結(jié)構(gòu)》課程的教學(xué)效果都不盡如人意,影響課程學(xué)習(xí)大致有如下原因:
1.基礎(chǔ)知識不扎實(shí)
現(xiàn)在各大高校選用的數(shù)據(jù)結(jié)構(gòu)教材都是C 語言版,也就是說數(shù)據(jù)結(jié)構(gòu)中的算法都是通過C 語言語法實(shí)現(xiàn)的,這就要求學(xué)生應(yīng)該具有一定的C 語言語法知識,并且數(shù)據(jù)結(jié)構(gòu)課程中算法的實(shí)現(xiàn)是對C 語言知識的綜合應(yīng)用,所以C 語言就是數(shù)據(jù)結(jié)構(gòu)課程的前導(dǎo)課。C 語言課程掌握程度的好壞直接決定數(shù)據(jù)結(jié)構(gòu)的掌握程度,但是現(xiàn)在的各大高校對C 語言課程重視程度不夠,課時數(shù)不斷縮減,從而限制了授課內(nèi)容。在數(shù)據(jù)結(jié)構(gòu)中經(jīng)常用到指針、數(shù)組、結(jié)構(gòu)體等構(gòu)造數(shù)據(jù)類型,但由于C 語言課程課時數(shù)的限制,致使往往不能深入地學(xué)習(xí)數(shù)組、指針與結(jié)構(gòu)體,甚至結(jié)構(gòu)體都講不到。因而每次開設(shè)數(shù)據(jù)結(jié)構(gòu)課程時,第一節(jié)課我先了解C 語言的進(jìn)度。C 語言學(xué)習(xí)的欠缺無疑給學(xué)生專業(yè)課程的學(xué)習(xí)設(shè)下了第一道屏障,從而對《數(shù)據(jù)結(jié)構(gòu)》的學(xué)習(xí)興趣大大減弱。
2.實(shí)踐機(jī)會少,動手能力差
《數(shù)據(jù)結(jié)構(gòu)》是一門理論與實(shí)踐并重的課程,在整個教學(xué)或?qū)W習(xí)過程中,解題能力和上機(jī)實(shí)訓(xùn)是一個重要的環(huán)節(jié)。有些任課教師往往只重視理論教學(xué),忽視實(shí)踐教學(xué),給學(xué)生的實(shí)踐機(jī)會太少,學(xué)生學(xué)起來就比較枯燥乏味,不理解《數(shù)據(jù)結(jié)構(gòu)》中抽象數(shù)據(jù)類型的定義及相應(yīng)的存儲表示, 難以實(shí)現(xiàn)算法與程序之間的轉(zhuǎn)換。在面對實(shí)際問題時,更不能運(yùn)用所學(xué)知識加以解決。
3.缺乏課外輔導(dǎo),導(dǎo)致學(xué)生自學(xué)時障礙重重
現(xiàn)在學(xué)生學(xué)習(xí)的積極性普遍不高,尤其是自學(xué)能力較差,不善于自主學(xué)習(xí),習(xí)慣于老師采用滿堂灌的方式。另外,即便有學(xué)生課外去學(xué)習(xí),但是如果在學(xué)習(xí)的過程中遇到不理解或者讀不懂的算法,卻無從下手,從而有可能影響學(xué)生的學(xué)習(xí)積極性。
鑒于以上問題,可以從以下方面進(jìn)行教學(xué)改革:
1.提高對先行課程的重視程度
首先增加C 語言課程的課時。學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)語言是提高學(xué)生計(jì)算機(jī)知識水平的重要步驟。C 語言是當(dāng)今最為流行的程序設(shè)計(jì)語言之一,C 語言課程是數(shù)據(jù)結(jié)構(gòu)課程的直接先行課,因此,本著“深入淺出,突出實(shí)用”的指導(dǎo)思想,在課堂教學(xué)過程中,對教學(xué)內(nèi)容重新進(jìn)行了歸納,將難點(diǎn)再次分散,以縮小臺階,達(dá)到循序漸進(jìn)。學(xué)好C 語言,為后續(xù)若干課程的學(xué)習(xí)打好堅(jiān)實(shí)的基礎(chǔ)。另外,增加數(shù)學(xué)及線性代數(shù)課程的課時。學(xué)習(xí)算法離不開數(shù)學(xué)的思想,學(xué)習(xí)數(shù)組的存儲結(jié)構(gòu)也離不開線性代數(shù)的應(yīng)用。
2.實(shí)際操作方面
計(jì)算機(jī)專業(yè)要求有很高的實(shí)際操作技能,而我們的學(xué)生在長期被動的學(xué)習(xí)過程中卻養(yǎng)成了勤于動腦、懶于動手的學(xué)習(xí)習(xí)慣,這樣的學(xué)生將來是不能滿足實(shí)際工作要求的。因此,數(shù)據(jù)結(jié)構(gòu)的實(shí)驗(yàn)教學(xué)要緊密配合理論教學(xué),通過相關(guān)實(shí)驗(yàn)與課程設(shè)計(jì),幫助學(xué)生加深對數(shù)據(jù)結(jié)構(gòu)的整體理解,所以在本課程結(jié)束前安排兩周實(shí)踐,進(jìn)行課程設(shè)計(jì),不要求實(shí)現(xiàn)過多的項(xiàng)目,但每個學(xué)生都要動手操作,親身經(jīng)歷從需求分析到算法分析、最后到代碼編寫與調(diào)試這樣的過程,從而更深刻地理解數(shù)據(jù)結(jié)構(gòu)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)以及在某種具體的存儲結(jié)構(gòu)下的運(yùn)算及其實(shí)現(xiàn)方法。
3.構(gòu)建《數(shù)據(jù)結(jié)構(gòu)》網(wǎng)絡(luò)視頻課程,加強(qiáng)師生互動環(huán)節(jié)
為了彌補(bǔ)課外輔導(dǎo)的欠缺,制作與《數(shù)據(jù)結(jié)構(gòu)》課程內(nèi)容相適應(yīng)的視頻,尤其是該課程中典型的算法及其實(shí)現(xiàn)過程,學(xué)生在課外學(xué)習(xí)時遇到問題可隨時登錄校園網(wǎng)觀看視頻,進(jìn)行查漏補(bǔ)缺,達(dá)到鞏固知識的效果。另外,在網(wǎng)站上可以設(shè)置在線答疑或留言功能,從而實(shí)現(xiàn)師生互動。
《數(shù)據(jù)結(jié)構(gòu)》不僅是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的專業(yè)基礎(chǔ)課,也是大多數(shù)院校研究生入學(xué)考試的必考課,因此,對《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)的研討將會持續(xù)下去,最終能找到一條行之有效的教學(xué)方法。
[1]李春葆.數(shù)據(jù)結(jié)構(gòu)(C語言版)[M].北京:清華大學(xué)出版社,2013
[2]嚴(yán)蔚敏.數(shù)據(jù)結(jié)構(gòu)(C語言)[M].北京:清華大學(xué)出版社,2011