文章編號:1672-5913(2008)18-0159-02
摘要:“數(shù)據(jù)結(jié)構(gòu)”課程是計算機科學(xué)與技術(shù)及信息管理與信息系統(tǒng)等專業(yè)的核心課程之一,同時也是一門實踐性很強的課程。然而,目前在“數(shù)據(jù)結(jié)構(gòu)”教學(xué)過程中卻存在著諸多問題。本文在分析這些問題的基礎(chǔ)上,提出了課題答辯式的“數(shù)據(jù)結(jié)構(gòu)”實驗教學(xué)方法。實施結(jié)果說明這是一種較為理想的實驗教學(xué)方法。
關(guān)鍵詞:數(shù)據(jù)結(jié)構(gòu);實驗教學(xué);改革
中圖分類號:G642 文獻標識碼:B
1“數(shù)據(jù)結(jié)構(gòu)”教學(xué)現(xiàn)狀和原因分析
根據(jù)調(diào)查發(fā)現(xiàn),目前大多數(shù)院?!皵?shù)據(jù)結(jié)構(gòu)”教學(xué)現(xiàn)狀不容樂觀。這表現(xiàn)在一方面授課教師感覺到學(xué)生學(xué)習(xí)積極性不高,知識點掌握不夠扎實,不能用于解決實際問題,講授進度過于緩慢,考試結(jié)果不甚理想;另一方面學(xué)生普遍反映學(xué)習(xí)難度較大,理論性太強,從而認為學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)”沒有實際用途,同時也產(chǎn)生較大的畏懼心理,導(dǎo)致大部分學(xué)生學(xué)完這門課程后仍然云里霧里,不知所學(xué)。造成這一現(xiàn)狀的原因主要有以下幾點:
(1) 理論與實踐相脫節(jié)?!皵?shù)據(jù)結(jié)構(gòu)”本身建立在抽象的數(shù)據(jù)模型的基礎(chǔ)上,理論性和邏輯性比較強,內(nèi)容相對來說枯燥無味、抽象難懂,知識點也比較多。同時,在學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)”之前大部分學(xué)生對計算機體系結(jié)構(gòu)并不了解,因而只是一味地從邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)等方面講解就會造成學(xué)生理解上的困難。另外,“數(shù)據(jù)結(jié)構(gòu)”本身是一門實踐性很強的課程,但在實際教學(xué)過程中無論是教師還是學(xué)生往往都是只重視理論教學(xué)而忽視實驗教學(xué)。
(2) 學(xué)生基礎(chǔ)薄弱。由于“數(shù)據(jù)結(jié)構(gòu)”是計算機專業(yè)和信息管理與信息系統(tǒng)專業(yè)其他核心課程的先行課,因而大部分院校都是在學(xué)生只學(xué)習(xí)了一門高級語言程序設(shè)計之后就要開出。一方面,學(xué)生缺乏對計算機較深入的理解;另一方面,由于學(xué)時的不斷壓縮,造成學(xué)生對程序設(shè)計語言的掌握不夠扎實。比如,我們在講授過程中經(jīng)常發(fā)現(xiàn),每當講到C語言中的函數(shù)調(diào)用、指針和結(jié)構(gòu)體的使用時,學(xué)生明顯覺得很吃力。這種現(xiàn)象導(dǎo)致課程進度非常緩慢,有時甚至不得不拿出專門的時間重新講授程序設(shè)計語言的內(nèi)容。這同時也導(dǎo)致學(xué)生一看到偽代碼就頭痛,學(xué)習(xí)興趣急劇下降,畏難情緒油然而生。
(3) 實驗學(xué)時和內(nèi)容安排不當,傳統(tǒng)的“重理論,輕實踐”的教學(xué)指導(dǎo)思想依然嚴重。比如大部分院校安排18個學(xué)時的實驗教學(xué),每2周上1次實驗課,1次2學(xué)時。這就使得原本較少的實驗學(xué)時進一步支離破碎,無法形成一個完整的實驗教學(xué)體系。另一方面,實驗內(nèi)容通常由指導(dǎo)教師安排一些簡單的驗證型實驗,也達不到鞏固和促進理論教學(xué)的目的。再加上學(xué)生編程能力本來就有限,造成實驗教學(xué)效果極差。
2課題答辯式實驗教學(xué)改革
2.1課題答辯式實驗教學(xué)的基本思想
課題答辯式實驗教學(xué)方法的基本思想是:合理安排實驗學(xué)時,整體規(guī)劃實驗內(nèi)容,以理論教學(xué)內(nèi)容指導(dǎo)實驗教學(xué)內(nèi)容,以實驗教學(xué)內(nèi)容鞏固和促進理論教學(xué)內(nèi)容的推進,培養(yǎng)和鍛煉學(xué)生理論與實踐相結(jié)合的科學(xué)態(tài)度、團隊合作精神,提高學(xué)生學(xué)習(xí)興趣、分析和解決問題能力、寫作能力、編程能力、組織和口頭表達能力、實踐能力及創(chuàng)新素質(zhì)。
2.2課題答辯式實驗教學(xué)的基本方案
課題答辯式實驗教學(xué)打破傳統(tǒng)的實驗教學(xué)方法,其基本方案包括以下幾個方面:
(1) 打破傳統(tǒng)的2周1次,每次2學(xué)時的實驗學(xué)時安排,采取相對集中的方法。比如我們把18個學(xué)時安排到每個學(xué)期的后6周進行,每周1次,每次3學(xué)時。這樣安排的好處有3點:首先,隨著理論課的深入,學(xué)生對前面所講內(nèi)容的理解更加深刻,有利于安排一些綜合性和創(chuàng)新性的實驗項目;其次,實驗時間相對集中,可讓實驗內(nèi)容得以連續(xù)進行,盡量減少中斷次數(shù);最后,在前期理論課進行過程中,學(xué)生會發(fā)現(xiàn)他們的程序設(shè)計語言基礎(chǔ)不夠扎實,因而會自覺加以復(fù)習(xí)。同時,通過教師對一些算法的講解和分析也可以促進學(xué)生對程序設(shè)計語言的掌握。
(2) 打破傳統(tǒng)的每次實驗都安排一些驗證性實驗內(nèi)容的做法,統(tǒng)一規(guī)劃實驗內(nèi)容。根據(jù)“數(shù)據(jù)結(jié)構(gòu)”課程內(nèi)容特點,我們只設(shè)置了4個實驗,即線性結(jié)構(gòu)(包括線性表、棧、隊列、串、數(shù)組和廣義表)、非線性結(jié)構(gòu)(樹和圖)、查找和排序各設(shè)1個。每個實驗可設(shè)置多個實驗課題,而每個課題都是一些綜合性的題目。比如,在線性結(jié)構(gòu)中我們設(shè)置了5個課題,分別是長整數(shù)運算、停車場管理、約瑟夫問題、簡單行編輯程序和稀疏矩陣運算器。每個課題都緊密聯(lián)系實際。同時也允許和鼓勵學(xué)生自選感興趣的、有實際應(yīng)用的課題。這樣學(xué)生就認識到“數(shù)據(jù)結(jié)構(gòu)”可以解決實際問題,興趣自然就提升上來了。
(3) 打破傳統(tǒng)的所有學(xué)生做同一個實驗項目的做法,采取分組做法。各個小組可以根據(jù)自己的興趣選擇題目,要求一個小組在規(guī)定的時間內(nèi)完成一個實驗項目。這樣做的好處是可以鍛煉學(xué)生的團隊合作精神。
(4) 打破傳統(tǒng)的學(xué)生做完實驗提交實驗報告就算完成的做法。只要求每個小組提交一份實驗報告。同時抽出專門的時間要求小組成員對實驗過程進行答辯,依據(jù)答辯情況進行評分。這大大提升了學(xué)生的編程能力、寫作能力、組織和口頭表達能力。
2.3課題答辯式實驗教學(xué)的具體實施方法
為了達到實驗教學(xué)效果,在實施過程中我們主要采取了以下一些具體方法:
(1) 對設(shè)計題目進行較詳細的說明。主要包括:課題所涉及“數(shù)據(jù)結(jié)構(gòu)”的內(nèi)容、課題的實際應(yīng)用價值、完成課題的基本要求、主要測試數(shù)據(jù)、課題實現(xiàn)提示和思考與提高等。
(2) 對實驗過程進行控制。為此,我們提出以下基本實驗要求:
① 每個小組由3-5人組成,每個小組選出1名小組長負責(zé)本小組的組織工作;
② 實驗題目分給定題目和自選題目,每個小組可以在某一階段時間內(nèi)從給定題目中選擇或者自擬1個以上的題目完成;
③ 所有成員都應(yīng)該參加本小組的設(shè)計,并詳細記錄在本小組中所起的作用,作為成員最終成績的評判依據(jù);
④ 每個小組每個題目提交一份實驗報告,實驗報告除介紹本小組成員基本信息外,還應(yīng)詳細記載小組成員所做的工作以及以下幾個方面的內(nèi)容:
●需求分析:說明課題設(shè)計的任務(wù);
●概要設(shè)計:說明課題中用到的抽象數(shù)據(jù)類型的定義、主程序的流程以及各程序模塊之間的調(diào)用關(guān)系;
●詳細設(shè)計:實現(xiàn)程序模塊的具體算法;
●調(diào)試分析:調(diào)試過程中遇到的問題及解決方法;算法的時空分析;經(jīng)驗和體會等。
●測試結(jié)果:列出測試結(jié)果,包括輸入和輸出;
●附錄:帶注釋的源程序。
(3) 對課題完成情況進行評判。采取的方法是進行公開答辯。成立答辯委員會,委員由各小組組長擔(dān)任。答辯分兩階段進行:陳述階段和提問階段。陳述內(nèi)容由各小組根據(jù)組員分工情況進行。提問則主要由選擇同一課題的其他小組成員參與,這樣可以共同交流各小組在完成課題時遇到的問題和解決的方法。答辯過程完全由學(xué)生組織和完成,教師參與指導(dǎo)。各小組的成績由答辯委員會給出,各小組成員的成績則由組長根據(jù)組員的工作情況給出。
3課題答辯式實驗教學(xué)的教學(xué)效果
我們對2006級信息管理與信息系統(tǒng)專業(yè)的學(xué)生采用了課題答辯式實驗教學(xué)。從提交的實驗報告反映出,各小組利用各種方式參與到其中,比如經(jīng)常在學(xué)生食堂、學(xué)生宿舍和QQ群上開展小組討論。由于大部分同學(xué)是帶著本小組討論的問題聽課,因而理論課堂的教學(xué)效果也明顯好轉(zhuǎn)。下面節(jié)選的期末網(wǎng)上學(xué)生評教和實驗報告學(xué)生體會和感言說明了課題答辯式實驗教學(xué)達到了較好的教學(xué)效果。
(1) 學(xué)生對教學(xué)的評價(節(jié)選自教務(wù)管理系統(tǒng)學(xué)生網(wǎng)上評教結(jié)果):
① 經(jīng)常做些答辯,讓學(xué)生有機會理論聯(lián)系實際,得到鍛煉;
② 注重教學(xué)方法,注意師生交流,能調(diào)動學(xué)生積極性;
③ 給予學(xué)生思考、聯(lián)想、創(chuàng)新的啟迪,學(xué)生收獲大;
④ 工作認真負責(zé),并有效地鍛煉了學(xué)生的實踐能力;
⑤ 注重培養(yǎng)學(xué)生的動手能力,教學(xué)方法比較適合創(chuàng)新型學(xué)生的培養(yǎng);
⑥ 注重教學(xué)方法創(chuàng)新,實驗內(nèi)容豐富,形式多樣化,使所有同學(xué)都參與到其中去;
⑦ 李老師給予我們思考、聯(lián)想、創(chuàng)新的啟迪, 我學(xué)到了解決問題的方法,提高了分析解決問題的能力,收獲大;
(2) 學(xué)生感言和體會(節(jié)選自學(xué)生實驗報告):
① 對于團體項目,工作組員應(yīng)該在組長組織下共同努力,說出自己的想法,在完成自己的分內(nèi)任務(wù)下,還應(yīng)該和大家積極的討論、學(xué)習(xí);
② 作為組長,我覺得大家在這次的實驗中真的很努力了,都盡可能最好的完成了布置的任務(wù)并且做得更好,還在討論中提出了許多有建設(shè)性的問題,有的組員甚至為了弄明白一些自己不懂的東西還向計算機老師請教,我覺得也許我們的程序還有思想不是很成熟,但是我們學(xué)習(xí)的熱情是絕對很高的;
③ 為了做好這次的實驗,我把不怎么熟悉的C語言看了一遍,還把數(shù)據(jù)結(jié)構(gòu)也看了一遍,覺得學(xué)習(xí)到的東西不只是編程序,還懂得了要把所學(xué)習(xí)到的東西連貫起來運用才達到真正使用的效果;
④ 本來覺得學(xué)習(xí)C語言和數(shù)據(jù)結(jié)構(gòu)在實際的生活中不會有什么作用,但是通過這次的學(xué)習(xí)我了解到其實生活中的許多東西都應(yīng)用到我們現(xiàn)在學(xué)習(xí)的東西,現(xiàn)在的知識再結(jié)合一些比較好的思路和方法我們也可以成為技術(shù)人員;
⑤ 團結(jié)就是力量,有多少努力付出就有多少收獲。通過實驗程序的編寫,最大的收獲是學(xué)會了如何與組員合作,在遇到問題的時候如何處理問題,培養(yǎng)了一種良好的思維習(xí)慣。
4結(jié)束語
“數(shù)據(jù)結(jié)構(gòu)”是一門理論性和實踐性都很強的課程,既需要利用理論教學(xué)的結(jié)果來指導(dǎo)實驗教學(xué)的過程,也需要利用實驗教學(xué)的過程來強化理論教學(xué)的效果。因此,如何在教學(xué)過程中把理論教學(xué)與實驗教學(xué)很好地結(jié)合起來就成為“數(shù)據(jù)結(jié)構(gòu)”教學(xué)成功的關(guān)鍵。本文提出的課題答辯式實驗教學(xué)能夠激發(fā)學(xué)生的學(xué)習(xí)興趣,鍛煉學(xué)生分析和解決實際問題的能力,培養(yǎng)學(xué)生全面綜合的素質(zhì),不失為一種較好的“數(shù)據(jù)結(jié)構(gòu)”教學(xué)方法。
參 考 文 獻
[1] 黃現(xiàn)代. “數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)改革與實踐[J]. 計算機教育,2007,(16):38-39,53.
[2] 趙玉霞. 《數(shù)據(jù)結(jié)構(gòu)》課程上機實驗改革初探[J]. 福建電腦,2007,(4):213-214.
[3] 陳瀾,顧翔. 數(shù)據(jù)結(jié)構(gòu)實踐環(huán)節(jié)教學(xué)研究[J]. 電腦知識與技術(shù),2007,(12):1712,1715.
[4] 陳媛,劉潔. 信息管理與信息系統(tǒng)專業(yè)中數(shù)據(jù)結(jié)構(gòu)課程的實驗教學(xué)探討[J]. 重慶工學(xué)院學(xué)報,2007,(5):161-163.
[5] 龔紅仿,楊宏杰,程思蔚. 數(shù)據(jù)結(jié)構(gòu)實驗課教學(xué)改革與實踐[J]. 計算機教育,2007,(12):53-55.
[6] 嚴蔚敏,吳偉民. 數(shù)據(jù)結(jié)構(gòu)(C語言版)[M]. 北京:清華大學(xué)出版社,1997.