謝爽,吳彩云
(西南林業(yè)大學(xué)數(shù)理學(xué)院,昆明650224)
《數(shù)據(jù)結(jié)構(gòu)》是計(jì)算機(jī)專業(yè)的一門專業(yè)核心課程,本課程具有高度的抽象性和應(yīng)用的靈活性,內(nèi)容主要包括線性表、數(shù)組、堆棧與隊(duì)列、廣義表、樹與二叉樹、圖與網(wǎng)絡(luò)分析、內(nèi)排序等內(nèi)容。作為一門核心基礎(chǔ)課,能否學(xué)好《數(shù)據(jù)結(jié)構(gòu)》對后續(xù)課程的學(xué)習(xí)也起著至關(guān)重要的作用[1]。
通過調(diào)查發(fā)現(xiàn),學(xué)生普遍反映該課程概念抽象,知識點(diǎn)繁多,很難理解。如果提高學(xué)生的學(xué)習(xí)積極性和程序設(shè)計(jì)能力,為后續(xù)可視化程序設(shè)計(jì)、操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)等課程打下良好的基礎(chǔ),真正提高學(xué)生利用所學(xué)知識解決實(shí)際問題的能力和實(shí)踐動手能力,是課程教學(xué)的難點(diǎn)所在。
為切實(shí)提高《數(shù)據(jù)結(jié)構(gòu)》課程的教學(xué)效果,加強(qiáng)對教材中定義和概念的理解,在實(shí)際教學(xué)過程中,將數(shù)學(xué)的理論和方法引入課堂教學(xué),這樣既可以培養(yǎng)學(xué)生的實(shí)際編程能力,又能夠加強(qiáng)對數(shù)學(xué)的理解,教學(xué)效果十分明顯[2]。
目前西南林業(yè)大學(xué)數(shù)理學(xué)院《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)主要面向的是信息與計(jì)算科學(xué)專業(yè),該專業(yè)有著扎實(shí)的數(shù)學(xué)基礎(chǔ),前期已經(jīng)學(xué)過數(shù)學(xué)分析、高等代數(shù)、離散數(shù)學(xué)、復(fù)變函數(shù)等數(shù)學(xué)類課程,為了保證教學(xué)效果,針對嚴(yán)蔚敏教授的《數(shù)據(jù)結(jié)構(gòu)》教材,內(nèi)容詳實(shí),結(jié)構(gòu)完整,但是概念非常抽象,對于基礎(chǔ)和條件相對薄弱的高校而已,學(xué)習(xí)起來困難極大,在教材選用上選用了唐發(fā)根教授所編寫的《數(shù)據(jù)結(jié)構(gòu)》教程,教學(xué)效果良好[3]。
在學(xué)時(shí)安排上,為了能夠更加詳細(xì)地?cái)⑹鼋滩膬?nèi)容,目前信息與計(jì)算科學(xué)專業(yè)的教學(xué)計(jì)劃是理論學(xué)時(shí)64,實(shí)驗(yàn)學(xué)時(shí)18,實(shí)習(xí)學(xué)時(shí)32。通過大量的實(shí)驗(yàn)和實(shí)習(xí)學(xué)時(shí),提高學(xué)生的實(shí)踐動手能力。
鑒于信息與計(jì)算科學(xué)專業(yè)有著扎實(shí)的數(shù)學(xué)基礎(chǔ),所以在課堂教學(xué)中的每一節(jié)內(nèi)容都通過大量的數(shù)學(xué)實(shí)例去引導(dǎo)學(xué)生,加深學(xué)生對抽象概念的理解。例如在第一章緒論中關(guān)于算法的描述,教材中采用文字表述了如何求兩個(gè)正整數(shù)M 與N 的最大公因子,要求學(xué)生去回憶高等代數(shù)中關(guān)于多項(xiàng)式的理論,在高等代數(shù)中曾有這樣一個(gè)定理:對任意的f(x),g(x)∈P[x],若其帶余除法為f(x)=q(x)g(x)+r(x),則兩對多項(xiàng)式f(x),g(x)和g(x),r(x)有相同的公因式和最大公因式。通過類比發(fā)現(xiàn)此處關(guān)于正整數(shù)最大公因子的描述和高等代數(shù)教材中關(guān)于最大公因式的描述非常類似,通過這種對比和分析,學(xué)生馬上就清楚了為什么求最大公因子的算法是這樣描述的了。
與之類似的例子數(shù)不勝數(shù),例如在第四章堆棧與隊(duì)列這一章中關(guān)于遞歸的概念[4],在教材中關(guān)于遞歸的說明非常抽象很難理解,很多學(xué)生都感覺很困難,在實(shí)際教學(xué)過程中通過引入大量的數(shù)學(xué)實(shí)例去輔助學(xué)生對遞歸的理解。例如在數(shù)學(xué)分析中關(guān)于Fibonacci 序列的定義如下:F0=0,F1=1,Fn=Fn-1+Fn-2(n ≥2),要求學(xué)生通過編程實(shí)現(xiàn)求Fibonacci 數(shù),又例如在高等代數(shù)中關(guān)于n 階行列式按行展開中有:行列式等于它的任一行(列)的各元素與其對應(yīng)的代數(shù)余子式乘積之和,即:D=ai1Ai1+ai2Ai2+…+ainAin,要求學(xué)生使用遞歸實(shí)現(xiàn)對n 階行列式的計(jì)算。通過數(shù)學(xué)與計(jì)算機(jī)兩方面融合,既加深了對數(shù)學(xué)概念和遞歸概念的理解[5],也提高了實(shí)際編程能力。
除了正常的課堂教學(xué)外,每次課后都布置一定量的習(xí)題要求學(xué)生必須完成。所布置的習(xí)題大部分都是與數(shù)學(xué)課程相關(guān)的,例如教材中給出了求最大公因式的算法,要求學(xué)生編程實(shí)現(xiàn)求最小公倍數(shù)的算法,并利用遞歸和非遞歸兩種形式實(shí)現(xiàn),又例如教材中講述了一元多項(xiàng)式的運(yùn)算,要求學(xué)生編程實(shí)現(xiàn)集合的交、并、補(bǔ)、差等運(yùn)算。通過編程實(shí)現(xiàn)大量的數(shù)學(xué)實(shí)例[6],既可以進(jìn)一步回顧曾經(jīng)學(xué)過的數(shù)學(xué)內(nèi)容,又可以和數(shù)據(jù)結(jié)構(gòu)中的概念形成共鳴,提高對數(shù)據(jù)結(jié)構(gòu)的理解和掌握,進(jìn)一步提升實(shí)踐動手能力。
本文根據(jù)西南林業(yè)大學(xué)數(shù)理學(xué)院信息與計(jì)算科學(xué)15 級《數(shù)據(jù)結(jié)構(gòu)》課程考試成績和已經(jīng)取得的數(shù)學(xué)分析、高等代數(shù)、離散數(shù)學(xué)、概率論與數(shù)理統(tǒng)計(jì)課程成績進(jìn)行對比,從而說明數(shù)學(xué)基礎(chǔ)對《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)起著至關(guān)重要的作用[7],為簡便起見,隨機(jī)抽取了班上10 名學(xué)生的成績,具體數(shù)據(jù)如表1 所示。
表1 學(xué)生成績表
通過上述表格我們?nèi)菀卓吹?,?shù)學(xué)成績較好的學(xué)生期末考試《數(shù)據(jù)結(jié)構(gòu)》考試成績也比較理想。下面我們通過多元線性回歸分析進(jìn)一步看到數(shù)學(xué)基礎(chǔ)和《數(shù)據(jù)結(jié)構(gòu)》是正相關(guān)的。這里設(shè)《數(shù)據(jù)結(jié)構(gòu)》成績?yōu)橐蜃兞縴,自變量為:數(shù)學(xué)分析x1,高等代數(shù)x2,離散數(shù)學(xué)x3,概率論與數(shù)理統(tǒng)計(jì)x4,利用SPSS 軟件建立線性回歸方程,其回歸方程為:
y=-13.8596+0.4989x1+0.267x2+0.1841x3+0.2698x4
其中:R2=0.9318,P=0.0040,通過P 值和R2結(jié)果看到,線性關(guān)系顯著,且成正相關(guān)關(guān)系。由此可見,數(shù)學(xué)基礎(chǔ)對《數(shù)據(jù)結(jié)構(gòu)》課程的學(xué)習(xí)及其重要,大學(xué)期間應(yīng)加強(qiáng)數(shù)學(xué)基礎(chǔ),切實(shí)提高學(xué)生分析問題和解決問題的能力。
學(xué)生綜合成績評價(jià)是反映教學(xué)成果的一個(gè)非常重要的環(huán)節(jié),學(xué)生成績也是學(xué)生對課程知識掌握程度的直接體現(xiàn)。本節(jié)運(yùn)用粗糙集理論建立學(xué)生成績評價(jià)模型,為簡單起見,仍然采用上節(jié)五門課程進(jìn)行分析。
為方便起見,這里采用等寬度離散化處理方法進(jìn)行粗糙集處理,為此做如下設(shè)置:
屬性值1 表示《數(shù)據(jù)結(jié)構(gòu)》成績?yōu)?3~74 分,屬性值2 表示《數(shù)據(jù)結(jié)構(gòu)》成績?yōu)?4~85 分,屬性值3 表示《數(shù)據(jù)結(jié)構(gòu)》成績大于85 分;
剩余四門課程成績與屬性對應(yīng)關(guān)系使用表格匯總?cè)绫? 所示。
表2 課程成績與屬性
表3 離散化后的決策表
屬性1,2,3 分別表示優(yōu)、中、差。于是得到如表3所示的離散化后的決策表。
這里約定用a,b,c,d,e 分別代表數(shù)據(jù)結(jié)構(gòu)、數(shù)學(xué)分析、高等代數(shù)、離散數(shù)學(xué)、概率論與數(shù)理統(tǒng)計(jì)。根據(jù)屬性的依賴性,屬性的重要性,約簡與核,對上表進(jìn)行如下計(jì)算:
由此可得:
通過權(quán)重系數(shù)可以看到,影響學(xué)生綜合成績因素較大的是數(shù)學(xué)分析和概率論與數(shù)理統(tǒng)計(jì),而在上節(jié)中的線性回歸方程中,也容易觀察到,對《數(shù)據(jù)結(jié)構(gòu)》課程成績影響較大的也是數(shù)學(xué)分析和概率論與數(shù)理統(tǒng)計(jì)課程成績。由此可見,在專業(yè)課程安排上,我們可以適當(dāng)增加數(shù)學(xué)分析和概率論與數(shù)理統(tǒng)計(jì)的教學(xué)課時(shí),加大師資力量投入,既可以提高其他課程成績,也能夠很大程度上提高學(xué)生綜合素質(zhì)。
根據(jù)上節(jié)分析得到的權(quán)重系數(shù),可根據(jù)如下公式計(jì)算學(xué)生綜合成績:
將通過上述公式計(jì)算所得綜合成績結(jié)果與平均值計(jì)算結(jié)果進(jìn)行比較,比較結(jié)果如表4 所示。
表4 綜合成績結(jié)果與平均值計(jì)算結(jié)果
通過表格可以看到,通過粗糙集確定課程權(quán)重算出綜合成績排名和通過簡單的平均計(jì)算綜合成績排名完全一樣,但是粗糙集分析方法可以有所側(cè)重,而不是將所有課程完全等同,所以更能體現(xiàn)學(xué)生的綜合成績。通過粗糙計(jì)算排名和《數(shù)據(jù)結(jié)構(gòu)》成績排名進(jìn)行比較可以發(fā)現(xiàn),《數(shù)據(jù)結(jié)構(gòu)》成績排名和粗糙集分析得到的綜合成績排名幾乎一樣,由此可見,《數(shù)據(jù)結(jié)構(gòu)》課程的學(xué)習(xí)效果對學(xué)生綜合素質(zhì)的提高起著至關(guān)重要的作用[8]。
《數(shù)據(jù)結(jié)構(gòu)》是計(jì)算機(jī)很多后續(xù)課程的基礎(chǔ),在很多學(xué)科中都起著承上啟下的作用,如何提升學(xué)生對數(shù)據(jù)結(jié)構(gòu)概念的理解,進(jìn)一步提升個(gè)人動手能力,教師在實(shí)際教學(xué)過程中,還應(yīng)積極思考,尋求教學(xué)方法,更新教學(xué)理念,從而充分調(diào)動學(xué)生的學(xué)習(xí)積極性,切實(shí)提高個(gè)人實(shí)踐動手能力。本文利用數(shù)學(xué)思想的灌輸,在實(shí)際教學(xué)過程中起到了較好的效果,但是對于數(shù)學(xué)基礎(chǔ)較差的學(xué)生考慮還不夠周全,在以后的教學(xué)中還應(yīng)進(jìn)一步解放思想,爭取取得更加滿意的教學(xué)效果。