趙耀紅,孫 宇
(長春大學(xué) a.計(jì)算機(jī)科學(xué)技術(shù)學(xué)院;b.特殊教育學(xué)院,長春 130022)
數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)的實(shí)踐與探索
趙耀紅a,孫 宇b
(長春大學(xué) a.計(jì)算機(jī)科學(xué)技術(shù)學(xué)院;b.特殊教育學(xué)院,長春 130022)
數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)是這門課程的一個(gè)重要環(huán)節(jié)。本文闡述了目前數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)中存在的問題,進(jìn)而提出了提高教學(xué)質(zhì)量的方法和手段。通過對(duì)實(shí)驗(yàn)教學(xué)改革的實(shí)踐,使得數(shù)據(jù)結(jié)構(gòu)的實(shí)驗(yàn)教學(xué)取得了良好的效果。關(guān)鍵詞:數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)教學(xué)方法
數(shù)據(jù)結(jié)構(gòu)課程是計(jì)算機(jī)科學(xué)與技術(shù)及信息管理與信息系統(tǒng)等專業(yè)的核心課程之一,同時(shí)也是一門實(shí)踐性很強(qiáng)的課程。在這門課程的教學(xué)過程中,要求學(xué)生既要學(xué)好理論知識(shí),又要學(xué)會(huì)分析、研究計(jì)算機(jī)加工的數(shù)據(jù)結(jié)構(gòu)的特性,更要掌握解決問題的能力,并且能夠編寫出結(jié)構(gòu)清晰、正確易讀的算法。而要想學(xué)好數(shù)據(jù)結(jié)構(gòu),提高程序設(shè)計(jì)水平必須經(jīng)過大量的實(shí)踐,在實(shí)踐中體會(huì)構(gòu)造性思維方法,掌握數(shù)據(jù)組織與程序設(shè)計(jì)的技術(shù)。實(shí)驗(yàn)教學(xué)的重要程度不亞于課堂知識(shí)的傳授,它是高等院校教學(xué)不可或缺的重要組成部分,在培養(yǎng)學(xué)生綜合素質(zhì)和創(chuàng)新能力方面所起到的重要作用是其他任何教學(xué)形式都無法取代的。
目前大多數(shù)院校對(duì)數(shù)據(jù)結(jié)構(gòu)這門課程的實(shí)驗(yàn)教學(xué)的現(xiàn)狀都不太樂觀,分析其主要原因有以下幾點(diǎn):
(1)課程難度大
在教學(xué)過程中,學(xué)生普遍反映學(xué)習(xí)難度較大,理論性太強(qiáng)。的確,數(shù)據(jù)結(jié)構(gòu)課程涵蓋的相關(guān)知識(shí)理論性很強(qiáng),內(nèi)容豐富,涉及到的算法非常多。尤其對(duì)于數(shù)據(jù)在內(nèi)存當(dāng)中的存儲(chǔ)方式很難形成直觀的了解,所以在理解上存在一定難度。課程中涉及到的樹和圖等數(shù)據(jù)結(jié)構(gòu)比較復(fù)雜,查找和排序的方法比較多,這些又都是這門課程的重點(diǎn),要求學(xué)生是必須要掌握的。而課程中涉及到的算法邏輯性強(qiáng),對(duì)先修課程C語言程序語言和離散數(shù)學(xué)又有一定的要求。這使得學(xué)生的學(xué)習(xí)造成了一定的困難。并且由于知識(shí)點(diǎn)掌握不扎實(shí),不能用于解決實(shí)際問題,所以學(xué)生學(xué)習(xí)積極性不高,認(rèn)為學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)”沒有實(shí)際用途。
(2)編程能力差
這門課程的先修課是程序設(shè)計(jì),而大多數(shù)院校學(xué)習(xí)的都是C語言程序設(shè)計(jì)。在語言程序設(shè)計(jì)中偏重的是基本語法的學(xué)習(xí),而數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)中需要大量用到結(jié)構(gòu)體、函數(shù)、指針、頭文件等,這些恰恰是學(xué)生學(xué)得較少,理解不好的內(nèi)容。所以在編程過程中,面對(duì)問題時(shí)很難有清晰的算法思想,也無法將算法思想轉(zhuǎn)變?yōu)檎_完整的程序代碼。學(xué)生很難把程序和數(shù)據(jù)結(jié)構(gòu)結(jié)合在一起,對(duì)于教材中的算法不知道如何用程序來實(shí)現(xiàn),而在編譯過程中又不知道如何調(diào)試,查找錯(cuò)誤修改程序。程序不能執(zhí)行,各方面屢屢碰壁使得學(xué)生對(duì)于各類數(shù)據(jù)結(jié)構(gòu)和算法更加難以理解和應(yīng)用,如此一來,學(xué)生漸漸地失去興趣,最后放棄了對(duì)這門課程的學(xué)習(xí)。
(3)實(shí)驗(yàn)項(xiàng)目不合理
一般在實(shí)驗(yàn)過程中,題目的選擇都是教材中的一些算法或是課后的練習(xí),或者是課后的實(shí)驗(yàn)。教材中的算法是無法直接在機(jī)器中執(zhí)行的,必須要把算法思想轉(zhuǎn)化成完整的程序才行,所以實(shí)驗(yàn)前沒有充分考慮數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),程序的設(shè)計(jì),上機(jī)是無法執(zhí)行的,只會(huì)讓錯(cuò)誤百出。而課后的一些題目難易程度不同,沒有很好的引導(dǎo)和很強(qiáng)的編程能力也是無法自行完成的。
(4)實(shí)驗(yàn)教學(xué)方法單一
通常的教學(xué)方法是教師在課堂上直接向?qū)W生灌輸理論知識(shí),提供相關(guān)的算法,學(xué)生直接上機(jī)調(diào)試程序,跟著教師操作。實(shí)踐證明,這種教學(xué)方法效果并不理想,主要問題是學(xué)生綜合應(yīng)用所學(xué)知識(shí)的能力差,缺乏獨(dú)立分析問題的能力,無法充分調(diào)動(dòng)學(xué)生的積極性。
針對(duì)以上的分析,改革主要從以下幾個(gè)方面進(jìn)行:
(1)實(shí)驗(yàn)題目的改革
西南地區(qū)連年干旱氣象地理原因分析及應(yīng)對(duì)措施建議…………………………………… 孫洪泉,高 輝,張海濱(8.21)
由于上機(jī)時(shí)間有限,學(xué)生的編程能力又較弱,所以題目的選擇就尤為重要。實(shí)驗(yàn)題目按照由易到難的順序進(jìn)行。
①基本算法題目。首先針對(duì)課堂上講解的數(shù)據(jù)結(jié)構(gòu)的基本算法給出程序的大體框架和相關(guān)算法,主要是用來驗(yàn)證算法的基本思想。
②應(yīng)用題目。利用已經(jīng)學(xué)過的基本操作,來完成一些具體的應(yīng)用問題。這種類型的題目主要是讓學(xué)生使用數(shù)據(jù)結(jié)構(gòu)解決一些應(yīng)用問題,了解數(shù)據(jù)結(jié)構(gòu)的應(yīng)用范圍。同時(shí)鍛煉了學(xué)生的編程能力。
以線性表這一章為例,課堂上講授了線性表的順序存儲(chǔ)和鏈?zhǔn)酱鎯?chǔ)以及這兩種存儲(chǔ)方式的基本操作,那么上機(jī)的基本算法題目就可以選擇教材中的這些算法。并且給出這些算法的頭文件,源文件的組織結(jié)構(gòu),給出完整程序的框架,讓學(xué)生去填寫框架中的基本操作,也就是函數(shù)。接下來要求學(xué)生完成一些實(shí)際應(yīng)用問題,如線性表逆置、約瑟夫環(huán)等。
題目的選擇難易程度要有區(qū)分,針對(duì)學(xué)生的不同情況選擇難易程度不同的題目,使基礎(chǔ)差的同學(xué)也能充分參與進(jìn)來,基礎(chǔ)好的同學(xué)也能夠很好地得到鍛煉。題目要有趣味性,最好能與實(shí)際生活中的事物相聯(lián)系,這樣能夠提高學(xué)生學(xué)習(xí)興趣,也能夠讓學(xué)生對(duì)知識(shí)點(diǎn)更好地理解。
(2)實(shí)驗(yàn)教學(xué)方法的改革
對(duì)于實(shí)驗(yàn)教學(xué)不能只是采取學(xué)生上機(jī),老師在機(jī)房里解決個(gè)別同學(xué)提出的問題,而是應(yīng)該采用各種方式方法相結(jié)合的手段,來提高實(shí)驗(yàn)的教學(xué)質(zhì)量。
①課堂答辯式。組織學(xué)生分組進(jìn)行答辯,通過老師的提問,考查學(xué)生的掌握情況,讓學(xué)生意識(shí)到自己還有哪些問題解決得不充分,同時(shí)也提高了學(xué)生的表達(dá)能力。加強(qiáng)了學(xué)生之間的相互學(xué)習(xí)和借鑒。
②插入式講解。實(shí)驗(yàn)教師與主講教師全程跟蹤實(shí)驗(yàn)進(jìn)程并指導(dǎo),巡視檢查,對(duì)于所做實(shí)驗(yàn)相關(guān)的共性問題隨時(shí)進(jìn)行講解。
③任務(wù)驅(qū)動(dòng)。在教學(xué)過程中,學(xué)生在教師的幫助下,緊緊圍繞一個(gè)共同的任務(wù)活動(dòng)中心,在強(qiáng)烈的問題動(dòng)機(jī)的驅(qū)動(dòng)下,通過對(duì)學(xué)習(xí)資源的積極主動(dòng)應(yīng)用,進(jìn)行自主探索和互動(dòng)協(xié)作的學(xué)習(xí),并在完成既定任務(wù)的同時(shí),引導(dǎo)學(xué)生產(chǎn)生一種學(xué)習(xí)興趣。使學(xué)生帶著真實(shí)的任務(wù)在探索中學(xué)習(xí)。任務(wù)要具有真實(shí)性,所謂真實(shí)的任務(wù)是指任務(wù)應(yīng)當(dāng)與學(xué)生的現(xiàn)實(shí)生活密切相關(guān),源自生活,這樣的任務(wù)才能引發(fā)學(xué)生的探究欲,激發(fā)學(xué)生的學(xué)習(xí)興趣。
教師主要是方法上的指導(dǎo),還可結(jié)合實(shí)際應(yīng)用作一些啟發(fā)性的提問,使學(xué)生知道從哪里入手做,以及從哪些方面可以作些變化。例如,在解決最短路徑問題時(shí),可以提前安排學(xué)生分組討論有關(guān)交通咨詢的問題,從旅客和司機(jī)的不同角度提出各種問題,如旅客要求交通費(fèi)用最省或途中所需時(shí)間最少等等,而對(duì)于司機(jī)來說里程和速度是他們最感興趣的信息。由此類問題出發(fā)進(jìn)一步提示學(xué)生如何確立圖的結(jié)構(gòu),獲取所需的信息,找出解決問題的一些方法。
④實(shí)驗(yàn)手段的現(xiàn)代化。把計(jì)算機(jī)網(wǎng)絡(luò)、資源共享、遠(yuǎn)程訪問等應(yīng)用到教學(xué)實(shí)驗(yàn)中。
(3)實(shí)驗(yàn)實(shí)施過程的改革
通常實(shí)驗(yàn)課是學(xué)生1人獨(dú)立完成的,但是針對(duì)一些應(yīng)用型題目或綜合性題目,教師可以將學(xué)生進(jìn)行分組,2-5人為一個(gè)小組,然后分組實(shí)驗(yàn)??梢杂山M長負(fù)責(zé)組織組員進(jìn)行討論,共同解決問題,所有組員都參與進(jìn)來。組與組之間對(duì)于解決相同問題采取的不同方法也可以進(jìn)行比較和討論,這樣有利于對(duì)問題的更深入理解,同時(shí)也鍛煉了學(xué)生的團(tuán)隊(duì)協(xié)作精神,增強(qiáng)溝通能力。
在實(shí)驗(yàn)實(shí)施過程中,教師要起到一個(gè)引導(dǎo)的作用,適時(shí)地幫助學(xué)生逐步理清問題的思路。對(duì)于一些常見的錯(cuò)誤或問題,統(tǒng)一進(jìn)行講解,及時(shí)糾正。
(4)實(shí)驗(yàn)考核評(píng)價(jià)的改革
必須注重實(shí)驗(yàn)結(jié)果的考核,下課前教師可以以小組為單位檢查實(shí)驗(yàn)情況,課后要求學(xué)生書寫實(shí)驗(yàn)報(bào)告,其中要包括實(shí)驗(yàn)結(jié)果。以便教師發(fā)現(xiàn)問題,能夠適時(shí)解決。并且實(shí)驗(yàn)課程也作為期末成績的10%,在分?jǐn)?shù)上給予一定鼓勵(lì)。
幾年的實(shí)踐和探索證明,《數(shù)據(jù)結(jié)構(gòu)》實(shí)驗(yàn)課程改革的成功應(yīng)用,使教師看到傳統(tǒng)教學(xué)模式改革的必要性和方向。這些改革在實(shí)踐過程中取得了較好的效果。通過由易到難、循序漸進(jìn)地實(shí)驗(yàn)學(xué)習(xí),培養(yǎng)了學(xué)生獨(dú)立分析、解決問題的能力。在這個(gè)過程中,學(xué)生還會(huì)不斷地獲得成就感,可以更大地激發(fā)他們的求知欲望,培養(yǎng)其獨(dú)立探索、勇于開拓進(jìn)取的自學(xué)能力。因此不斷的探索、改革和創(chuàng)新是我們永不能停歇的腳步。
[1]嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語言版)[M].北京:清華大學(xué)出版社,2001.
[2]張桂芬,李海濱.數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)教學(xué)的改革與探索[J].高教論壇,2008(3):105-106.
[3]吳英杰,王一蕾,王曉東.面向問題求解的實(shí)踐教學(xué)模式——“算法與數(shù)據(jù)結(jié)構(gòu)”實(shí)踐教學(xué)改革[J].計(jì)算機(jī)教育,2007(7):31-33.
Practice and Exploration about Experimental Teaching of Data Structure
ZHAO Yao-honga,SUN Yub
(a.College of Computer Science and Technology;b.Special Education College,Changchun University,Changchun 130022,China)
The experimental teaching of data structure is an important part of this course.This paper describes the problems existing in the experimental teaching of data structure,and presents ways and means to improve the quality of teaching.Through the practice of reform,the experimental teaching of data structure obtains good results.
data structure;experimental teaching;teaching method
TP311.12
A
1009-3907(2012)04-0413-03
2012-02-28
吉林省教育廳教學(xué)研究項(xiàng)目(SSYB10-03)
趙耀紅(1975-),女,吉林長春人,講師,碩士,主要從事數(shù)據(jù)庫技術(shù)、信息系統(tǒng)、計(jì)算機(jī)軟件教學(xué)與研究。
責(zé)任編輯:吳旭云