楊秋妹 鄭嬋
[摘 要] “數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)課程是提高學(xué)生代碼編寫能力、強(qiáng)化課程知識(shí)點(diǎn)學(xué)習(xí)的關(guān)鍵。從地理信息科學(xué)專業(yè)的專業(yè)培養(yǎng)方案設(shè)定出發(fā),根據(jù)學(xué)生的程序設(shè)計(jì)能力基礎(chǔ),設(shè)計(jì)合理的“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)題目及豐富多樣的做題形式,充分利用綜合性實(shí)驗(yàn)的開展作為實(shí)驗(yàn)學(xué)時(shí)的補(bǔ)充。在教學(xué)手段上,通過動(dòng)態(tài)的代碼演示幫助學(xué)生更好地理解算法的設(shè)計(jì)原理及運(yùn)行過程,引入在線評(píng)判手段更好地評(píng)估學(xué)生的實(shí)驗(yàn)情況,加強(qiáng)學(xué)生程序能力的培養(yǎng)。為地理信息科學(xué)專業(yè)建立有特色的“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)教學(xué)方案,以更好地提升學(xué)生的計(jì)算機(jī)問題求解能力。
[關(guān)鍵詞] 數(shù)據(jù)結(jié)構(gòu);地理信息科學(xué);實(shí)驗(yàn)教學(xué)改革
[基金項(xiàng)目] 2020年度華南農(nóng)業(yè)大學(xué)校級(jí)教改項(xiàng)目“將思政之鹽融入計(jì)算機(jī)算法類課程之湯的隱性教育探索和實(shí)踐”
[作者簡(jiǎn)介] 楊秋妹(1983—),女,廣東茂名人,博士,華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院講師,主要從事計(jì)算機(jī)應(yīng)用技術(shù)、農(nóng)業(yè)圖像處理、農(nóng)業(yè)人工智能研究;鄭 嬋(1978—),女,福建邵武人,博士,華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院講師,主要從事計(jì)算機(jī)視覺研究。
[中圖分類號(hào)] G434;TP311.1 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 1674-9324(2022)15-0069-04 [收稿日期] 2021-10-01
地理信息科學(xué)(GIS)專業(yè)是一門交叉學(xué)科,研究的內(nèi)容涉及地理科學(xué)、測(cè)繪學(xué)、計(jì)算機(jī)科學(xué)、數(shù)學(xué)與統(tǒng)計(jì)學(xué)等[1]多個(gè)學(xué)科。GIS研究如何應(yīng)用計(jì)算機(jī)技術(shù)對(duì)地理信息進(jìn)行處理、存儲(chǔ)、提取及管理和分析。GIS專業(yè)的學(xué)生需具備利用計(jì)算機(jī)進(jìn)行數(shù)據(jù)分析與處理及應(yīng)用系統(tǒng)開發(fā)能力[2]。因此,“C語言程序設(shè)計(jì)”“數(shù)據(jù)結(jié)構(gòu)”等計(jì)算機(jī)專業(yè)基礎(chǔ)課程是GIS專業(yè)的必修課程。“數(shù)據(jù)結(jié)構(gòu)”研究的是非數(shù)值計(jì)算問題中數(shù)據(jù)的建模問題,其配套的實(shí)驗(yàn)課作為理論學(xué)習(xí)的補(bǔ)充,通過程序設(shè)計(jì)將抽象的數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)上具體實(shí)現(xiàn)。實(shí)驗(yàn)的開展可深化學(xué)生對(duì)知識(shí)點(diǎn)的理解,是提高學(xué)生計(jì)算機(jī)求解問題能力提升的關(guān)鍵[3],為后繼課程如“GIS算法基礎(chǔ)”“網(wǎng)絡(luò)GIS”“GIS開發(fā)新技術(shù)”等學(xué)習(xí)做好準(zhǔn)備[4],也為其以后進(jìn)行地理信息系統(tǒng)的設(shè)計(jì)及開發(fā)打下基礎(chǔ)。作為GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”課程的任課教師,應(yīng)充分利用實(shí)驗(yàn)教學(xué)環(huán)節(jié),促進(jìn)學(xué)生對(duì)于數(shù)據(jù)結(jié)構(gòu)相關(guān)知識(shí)的學(xué)習(xí),形成有GIS專業(yè)特色的“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)方法。
一、GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”課程實(shí)驗(yàn)教學(xué)中存在的問題分析
(一)課程知識(shí)點(diǎn)多,實(shí)驗(yàn)學(xué)時(shí)不足
當(dāng)前,高校GIS專業(yè)開設(shè)的“數(shù)據(jù)結(jié)構(gòu)”課程,學(xué)時(shí)普遍比計(jì)算機(jī)專業(yè)的要少,配套的實(shí)驗(yàn)學(xué)時(shí)普遍不足,無法將各個(gè)知識(shí)點(diǎn)進(jìn)行一一驗(yàn)證。以華南農(nóng)業(yè)大學(xué)GIS專業(yè)的教學(xué)安排為例,其理論學(xué)時(shí)為32學(xué)時(shí),實(shí)驗(yàn)學(xué)時(shí)為16學(xué)時(shí),而計(jì)算機(jī)相關(guān)專業(yè)“數(shù)據(jù)結(jié)構(gòu)”課程的理論學(xué)時(shí)為56學(xué)時(shí),實(shí)驗(yàn)學(xué)時(shí)為32學(xué)時(shí),GIS專業(yè)的學(xué)時(shí)明顯壓縮,這導(dǎo)致GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”的教學(xué)大綱不能直接照搬計(jì)算機(jī)相關(guān)專業(yè),由于理論學(xué)時(shí)的減少,相關(guān)內(nèi)容的學(xué)習(xí)則會(huì)有明顯的側(cè)重點(diǎn)不同,而實(shí)驗(yàn)環(huán)節(jié)的教學(xué)也應(yīng)該做相應(yīng)的調(diào)整。
(二)學(xué)生程序設(shè)計(jì)基礎(chǔ)相對(duì)薄弱
“C語言程序設(shè)計(jì)”課程作為“數(shù)據(jù)結(jié)構(gòu)”課程的先導(dǎo)課,學(xué)習(xí)的知識(shí)是“數(shù)據(jù)結(jié)構(gòu)”課程順利開展的前提保證,但是很多高校GIS專業(yè)的“C語言程序設(shè)計(jì)”課程是作為通識(shí)教育課程而非專業(yè)教育課程開設(shè),這導(dǎo)致學(xué)生程序設(shè)計(jì)水平不高,并且由于學(xué)時(shí)的不足,“數(shù)據(jù)結(jié)構(gòu)”中要用到的重要知識(shí)點(diǎn)如鏈表、結(jié)構(gòu)體等內(nèi)容都沒有進(jìn)行深入的學(xué)習(xí)。由于在“C語言程序設(shè)計(jì)”課程中編寫代碼的能力沒有得到充足的訓(xùn)練,導(dǎo)致學(xué)生產(chǎn)生畏難情緒,在剛開始接觸“數(shù)據(jù)結(jié)構(gòu)”課程時(shí)聽到需要上機(jī)編程都感到緊張害怕,沒有信心學(xué)好“數(shù)據(jù)結(jié)構(gòu)”這門課程。
(三)學(xué)生重視程度不夠
GIS專業(yè)的部分學(xué)生存在錯(cuò)誤認(rèn)知,認(rèn)為“數(shù)據(jù)結(jié)構(gòu)”課程是計(jì)算機(jī)專業(yè)的核心課程,但是對(duì)于GIS專業(yè)來說并不重要,只需要作為一門通識(shí)教育課程去學(xué)習(xí)就可以了。但實(shí)際上GIS技術(shù)與數(shù)據(jù)結(jié)構(gòu)密切關(guān)聯(lián),數(shù)據(jù)結(jié)構(gòu)探討現(xiàn)實(shí)世界中的一對(duì)一、一對(duì)多及多對(duì)多的數(shù)據(jù)關(guān)系,這些都與GIS中的矢量、柵格等數(shù)據(jù)結(jié)構(gòu)相關(guān)。GIS多以現(xiàn)實(shí)的地圖作為基礎(chǔ)數(shù)據(jù),主要涉及兩大應(yīng)用類型的地圖,一種是地形圖,用于展示地球表面特征的基本地圖;一種是專用地圖,用于表達(dá)事物變化模式的地圖。而真實(shí)世界的地圖在計(jì)算機(jī)上實(shí)現(xiàn)則需要用到“圖”數(shù)據(jù)結(jié)構(gòu)的相關(guān)知識(shí)點(diǎn),如鄰接矩陣存儲(chǔ)法、最小生成樹算法、最短路徑算法等。GIS的問題求解需要大量“數(shù)據(jù)結(jié)構(gòu)”課程中的知識(shí)點(diǎn)作為支撐。
二、GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)教學(xué)內(nèi)容改革
(一)設(shè)計(jì)合理的實(shí)驗(yàn)題目
“數(shù)據(jù)結(jié)構(gòu)”是一門強(qiáng)調(diào)動(dòng)手實(shí)踐的課程,因此幾乎每個(gè)章節(jié)都需要配備相應(yīng)的實(shí)驗(yàn)題目以深化學(xué)生對(duì)知識(shí)點(diǎn)的理解。但是GIS專業(yè)不能照搬計(jì)算機(jī)專業(yè)的實(shí)驗(yàn)內(nèi)容,應(yīng)該根據(jù)實(shí)驗(yàn)學(xué)時(shí)及學(xué)生編碼水平進(jìn)行調(diào)整。以筆者授課的2020級(jí)GIS專業(yè)的學(xué)生為例,多數(shù)學(xué)生在第一次實(shí)驗(yàn)課無法順利完成一道實(shí)驗(yàn)題目,如果布置的實(shí)驗(yàn)題目過多,容易打擊學(xué)生的學(xué)習(xí)積極性,使其產(chǎn)生厭學(xué)情緒。
GIS專業(yè)的“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)題目設(shè)計(jì)應(yīng)在緊扣教學(xué)內(nèi)容的同時(shí)從學(xué)生的實(shí)際情況出發(fā)考慮。通過觀察學(xué)生的實(shí)際做題情況,在計(jì)算機(jī)專業(yè)的“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)題目的基礎(chǔ)上進(jìn)行調(diào)整,形成GIS專業(yè)實(shí)驗(yàn)題目集。實(shí)驗(yàn)題目集分為線性表、棧和隊(duì)列、串?dāng)?shù)組和廣義表、樹和二叉樹、圖、查找、排序七個(gè)模塊。線性表的實(shí)驗(yàn)包括順序線性表的實(shí)現(xiàn)、合并順序表、順序表逆置、鏈?zhǔn)骄€性表的實(shí)現(xiàn)、合并鏈表、線性鏈表逆置;棧和隊(duì)列的實(shí)驗(yàn)包括順序棧的實(shí)現(xiàn)、循環(huán)隊(duì)列的實(shí)現(xiàn)、棧的應(yīng)用—進(jìn)制轉(zhuǎn)換、括號(hào)匹配檢驗(yàn);串?dāng)?shù)組和廣義表的實(shí)驗(yàn)為串的模式匹配—蠻力法;樹和二叉樹的實(shí)驗(yàn)包括二叉樹的構(gòu)建、二叉樹的遍歷運(yùn)算;圖的實(shí)驗(yàn)為實(shí)現(xiàn)圖的存儲(chǔ)結(jié)構(gòu);查找的實(shí)驗(yàn)包括順序查找、二分查找;排序的實(shí)驗(yàn)包括直接插入排序、冒泡排序、快速排序、簡(jiǎn)單選擇排序;經(jīng)過調(diào)整,將部分較難的實(shí)驗(yàn)題目去除,但保留了線性表、樹、圖核心數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)及基本操作,保證學(xué)生對(duì)重要知識(shí)點(diǎn)的驗(yàn)證實(shí)驗(yàn),確保學(xué)習(xí)質(zhì)量。
(二)豐富實(shí)驗(yàn)做題的形式
筆者授課的GIS專業(yè)采用的教材為人民郵件出版社出版、嚴(yán)蔚敏主編的《數(shù)據(jù)結(jié)構(gòu)(C語言版)》。書中的各類數(shù)據(jù)結(jié)構(gòu)以結(jié)構(gòu)體的形式實(shí)現(xiàn),在實(shí)現(xiàn)時(shí)涉及結(jié)構(gòu)體變量的定義、函數(shù)的調(diào)用等知識(shí)點(diǎn),對(duì)于程序設(shè)計(jì)能力普遍有限的學(xué)生來說入手比較難。根據(jù)筆者授課的班級(jí)情況統(tǒng)計(jì),在課程學(xué)習(xí)初期存在著部分學(xué)生無法完整編寫一個(gè)程序的現(xiàn)象。因此,實(shí)驗(yàn)題目的設(shè)置形式應(yīng)多樣化,不能單純地只給出題干,直接要求學(xué)生從無到有編寫出一個(gè)完整程序。實(shí)驗(yàn)題目可包括程序填空題、程序閱讀題及算法設(shè)計(jì)題。在實(shí)驗(yàn)初期,可多以程序填空題及程序閱讀題為主,這樣可保證學(xué)生既能快速進(jìn)入學(xué)習(xí)狀態(tài),也能通過代碼的閱讀加深對(duì)代碼的理解,規(guī)范代碼的編寫。到實(shí)驗(yàn)中后期,則可多以算法設(shè)計(jì)題為主,進(jìn)一步鍛煉學(xué)生的編碼能力。
以“順序線性表的實(shí)現(xiàn)”為例,如果只給出題干要求學(xué)生給出實(shí)驗(yàn)—順序線性表,即便是書本上已經(jīng)給出了大部分的代碼,大部分同學(xué)還是不清楚該如何下手編寫程序,而以程序填空的方式則可讓學(xué)生快速上手,同時(shí)也起到了驗(yàn)證課程學(xué)習(xí)內(nèi)容的功效。程序填空題不是簡(jiǎn)單地填一個(gè)空,而是給出程序的總框架,如函數(shù)定義等,讓學(xué)生往里面補(bǔ)充代碼,所補(bǔ)充的代碼可以是單條或多條語句。
(三)重視綜合性實(shí)驗(yàn)的開展
綜合性實(shí)驗(yàn)是布置給學(xué)生課后完成的實(shí)驗(yàn),可彌補(bǔ)實(shí)驗(yàn)學(xué)時(shí)不夠的缺陷。因此,應(yīng)充分利用綜合性實(shí)驗(yàn)的開展來加強(qiáng)學(xué)生對(duì)知識(shí)點(diǎn)的掌握。樹、圖部分的內(nèi)容對(duì)于GIS專業(yè)的學(xué)生來說非常重要,綜合性實(shí)驗(yàn)可從這兩方面來設(shè)計(jì)題目,可用“實(shí)現(xiàn)二叉排序樹的各種算法”及“實(shí)現(xiàn)圖的各種算法”作為基本題目出發(fā)點(diǎn),學(xué)生可從兩個(gè)題目中任選一個(gè)來進(jìn)行擴(kuò)展實(shí)驗(yàn)。通過綜合性實(shí)驗(yàn)的開展,可進(jìn)一步訓(xùn)練學(xué)生函數(shù)的調(diào)用、遞歸、棧、隊(duì)列、樹、圖等知識(shí)點(diǎn)的編碼能力。
綜合性實(shí)驗(yàn)的題目與課堂內(nèi)完成的實(shí)驗(yàn)相比,難度大,工作量多,允許學(xué)生以2人組隊(duì)的形式完成,通過團(tuán)隊(duì)合作鍛煉程序模塊的劃分、組合。
綜合性實(shí)驗(yàn)開展過程中,鼓勵(lì)學(xué)生積極靈活地運(yùn)用所學(xué)的課程知識(shí),并通過查閱參考資料將其與自己所學(xué)專業(yè)結(jié)合。如二叉排序樹可擴(kuò)展到地理信息系統(tǒng)中的空間索引問題,創(chuàng)建四叉樹解決二維空間數(shù)據(jù)的高效查詢。而圖算法則可應(yīng)用在地理信息系統(tǒng)中的網(wǎng)絡(luò)分析問題上,包括旅游路線規(guī)劃問題、電子導(dǎo)航問題、通信規(guī)劃問題、城市基礎(chǔ)設(shè)施搭建問題等[5]。
三、GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)教學(xué)方法改革
對(duì)于計(jì)算機(jī)相關(guān)專業(yè),由于其大部分學(xué)生已具備了一定的程序設(shè)計(jì)能力,所以“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)的開展主要以學(xué)生動(dòng)手編碼為主,教師講解為輔。而GIS專業(yè)的學(xué)生則需要教師更多地參與到其實(shí)驗(yàn)的開展過程中。
(一)加強(qiáng)代碼演示講解環(huán)節(jié)
根據(jù)學(xué)生給的教學(xué)反饋,學(xué)生反映無法將算法思想與代碼編寫進(jìn)行關(guān)聯(lián)。在實(shí)驗(yàn)環(huán)節(jié)增加代碼演示環(huán)節(jié)很有必要。盡管學(xué)時(shí)不多,仍需對(duì)較難理解的算法通過代碼演示的形式給學(xué)生進(jìn)行講解。教師運(yùn)行程序,輸入有代表性的數(shù)據(jù),在關(guān)鍵步驟結(jié)合中間輸出結(jié)果講解程序語句的執(zhí)行過程,解釋算法思想。如鏈表的插入,其代碼演示頁面如圖1所示。上課講解時(shí)結(jié)合代碼給學(xué)生介紹在鏈表的第i個(gè)位置插入新元素,首先找到第i個(gè)元素所在的位置(代碼2~5行),接著生成新結(jié)點(diǎn)并對(duì)其賦值(代碼6~8行),加深學(xué)生對(duì)代碼的理解掌握。
除了教師直接給學(xué)生進(jìn)行代碼演示外,在教材《數(shù)據(jù)結(jié)構(gòu)(C語言版)》中已經(jīng)對(duì)大部分的數(shù)據(jù)結(jié)構(gòu)操作都錄制了代碼演示,可通過書本提供的二維碼掃碼觀看。學(xué)生在學(xué)習(xí)完每個(gè)知識(shí)點(diǎn)后,可結(jié)合書本的代碼實(shí)現(xiàn)及算法的動(dòng)態(tài)演示,了解算法的一步步運(yùn)行過程,加深對(duì)算法的理解。
(二)引入在線評(píng)判的考核方式
“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)每次課都需要學(xué)生完成一定量的實(shí)驗(yàn)題目,對(duì)學(xué)生實(shí)驗(yàn)的完成情況進(jìn)行檢查能端正學(xué)生的做題態(tài)度,督促學(xué)生按時(shí)完成作業(yè),促進(jìn)學(xué)生做題的積極性。但由于現(xiàn)在的課程多采用大班教學(xué),人數(shù)眾多,任課教師無法每次課一一對(duì)學(xué)生的代碼進(jìn)行檢查。國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽(ACM-ICPC)為全球最有影響力的大學(xué)生程序設(shè)計(jì)競(jìng)賽,比賽采用在線評(píng)判的方式檢查參賽者的代碼是否正確[6]。在GIS專業(yè)的“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)課程中,也可引入在線評(píng)判系統(tǒng),教師對(duì)每道題目設(shè)計(jì)合理的測(cè)試樣例,學(xué)生通過在線評(píng)判系統(tǒng)提交實(shí)驗(yàn)代碼,由在線評(píng)判系統(tǒng)自動(dòng)進(jìn)行評(píng)判,及時(shí)反饋實(shí)驗(yàn)結(jié)果,學(xué)生根據(jù)反饋結(jié)果進(jìn)行代碼的修改,由此提高實(shí)驗(yàn)效率。教師也可通過在線評(píng)判系統(tǒng)及時(shí)獲取學(xué)生的實(shí)驗(yàn)情況,了解學(xué)生的掌握程度,并由此做出相應(yīng)的實(shí)驗(yàn)教學(xué)輔導(dǎo)。采用在線評(píng)判的另一個(gè)好處是可引導(dǎo)學(xué)生自己設(shè)計(jì)樣例測(cè)試數(shù)據(jù)。通常系統(tǒng)只給出1~2個(gè)測(cè)試樣例,但是實(shí)際評(píng)判時(shí)會(huì)有多組數(shù)據(jù),做題時(shí)學(xué)生經(jīng)常會(huì)出現(xiàn)測(cè)試樣例通過但提交到評(píng)判系統(tǒng)則無法通過的情況,但是設(shè)置成多次提交會(huì)扣除部分分?jǐn)?shù),鼓勵(lì)學(xué)生多考慮程序的邊界條件、異常情況等因素,加強(qiáng)程序的健壯性。
除了在線評(píng)判系統(tǒng)外,對(duì)于部分遲遲未在系統(tǒng)上提交實(shí)驗(yàn)或多次提交都無法通過的學(xué)生,應(yīng)由教師及助教對(duì)其進(jìn)行一對(duì)一的作業(yè)檢查及輔導(dǎo)。由于在線評(píng)判系統(tǒng)是黑箱子評(píng)判模式,只有通過全部測(cè)試數(shù)據(jù)才標(biāo)記為已通過,有部分學(xué)生因?yàn)槌绦蛟O(shè)計(jì)知識(shí)掌握不扎實(shí),被某組測(cè)試數(shù)據(jù)卡住后無法獨(dú)立找出錯(cuò)誤原因。教師可通過與其分析代碼,幫助其較快地解決問題,趕上實(shí)驗(yàn)的做題進(jìn)度。
在實(shí)驗(yàn)評(píng)分上,除了依據(jù)在線評(píng)判系統(tǒng)的做題情況外,教師也應(yīng)根據(jù)學(xué)生在實(shí)驗(yàn)上投入的精力及努力程度對(duì)其進(jìn)行分?jǐn)?shù)的嘉獎(jiǎng)。
(三)加強(qiáng)學(xué)生程序調(diào)試能力的培養(yǎng)
通過多年觀察學(xué)生在“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)課堂的表現(xiàn)情況,發(fā)現(xiàn)當(dāng)程序?qū)τ诮o定輸入得不到預(yù)期輸出結(jié)果時(shí),很多學(xué)生不清楚如何進(jìn)行代碼錯(cuò)誤定位,從而浪費(fèi)大量實(shí)驗(yàn)時(shí)間。因此,在“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)教學(xué)中,應(yīng)加強(qiáng)學(xué)生程序調(diào)試能力的培養(yǎng)。程序調(diào)試指的是根據(jù)錯(cuò)誤提示信息及算法邏輯的推理,找到有可能會(huì)導(dǎo)致錯(cuò)誤發(fā)生的位置。
程序的調(diào)試手段之一,通過在程序源代碼中設(shè)置多個(gè)輸出點(diǎn),通過中間輸出結(jié)果來定位錯(cuò)誤位置。在線評(píng)判系統(tǒng)要求輸出結(jié)果嚴(yán)格按照給定的要求,否則出錯(cuò),在此要求下學(xué)生編寫的程序一般只輸出目標(biāo)結(jié)果。一旦出錯(cuò),很難確定出錯(cuò)位置。此時(shí),則需要增加中間結(jié)果輸出作為程序調(diào)試的依據(jù)。
程序的調(diào)試手段之二,利用程序集成開發(fā)環(huán)境(IDE)提供的debug調(diào)試模式,在程序可能出錯(cuò)的代碼行設(shè)置斷點(diǎn),通過debug中提供的單步運(yùn)行、進(jìn)入函數(shù)內(nèi)部或跳出函數(shù)等方法,監(jiān)控程序中各個(gè)相關(guān)變量的情況,盡快定位出錯(cuò)的地方。
教學(xué)應(yīng)因材施教,GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)課程的開展應(yīng)根據(jù)學(xué)生的專業(yè)背景,結(jié)合學(xué)生對(duì)先導(dǎo)課程的掌握程度,設(shè)計(jì)合理的課程教案。在教學(xué)內(nèi)容上,可通過調(diào)整實(shí)驗(yàn)題目、增加實(shí)驗(yàn)題型,以綜合性實(shí)驗(yàn)的方式拓展實(shí)驗(yàn)深度。在教學(xué)方法上,重視實(shí)驗(yàn)代碼演示,采用在線評(píng)判系統(tǒng)結(jié)合人工評(píng)判的考核方式,加強(qiáng)學(xué)生的程序調(diào)試能力訓(xùn)練。借由GIS專業(yè)“數(shù)據(jù)結(jié)構(gòu)”實(shí)驗(yàn)課程教學(xué)的改革,為GIS專業(yè)的學(xué)生在后續(xù)的專業(yè)學(xué)習(xí)提供保障,也為其在未來從事GIS二次開發(fā)、底層開發(fā)的工作打下堅(jiān)實(shí)的基礎(chǔ)。
參考文獻(xiàn)
[1]戴仕寶,王春.新工科背景下應(yīng)用型高校GIS專業(yè)建設(shè)探討[J].測(cè)繪工程,2019,28(4):72-76.
[2]胡最.地方高校GIS專業(yè)程序設(shè)計(jì)技能培養(yǎng)[J].地理空間信息,2020,18(12):58-62+7.
[3]宋歌.《數(shù)據(jù)結(jié)構(gòu)》實(shí)驗(yàn)教學(xué)手段和方法的改革初探[J].電腦與信息技術(shù),2021,29(2):92-94.
[4]肖媚燕.地理信息科學(xué)專業(yè)的數(shù)據(jù)結(jié)構(gòu)課程教學(xué)[J].計(jì)算機(jī)教育,2015(3):87-89.
[5]王凌,段江濤,王保保.GIS中最短路徑的算法研究與仿真[J].計(jì)算機(jī)仿真,2005(1):117-120.
[6]張少仲,白英,王小妹,等.基于ACM競(jìng)賽的數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)課程教學(xué)研究[J].計(jì)算機(jī)時(shí)代,2020(10):73-75.
Exploration on the Reform of Experimental Teaching of Data Structure in Geographic Information Science Specialty
YANG Qiu-mei, ZHENG Chan
(College of Mathematics and Informatics, South China Agricultural University, Guangzhou, Guangdong 510642, China)
Abstract: The experimental course of is very important to improve students’ ability of code writing and strengthen their knowledge learning. Starting from the training program of Geographic Information Science, according to the students’ programming ability, we design reasonable experimental topics of Data Structure, and make full use of comprehensive experiments as a supplement to the experimental hours. In terms of teaching means, we help students better understand the design principle and operation process of the algorithm through dynamic code demonstration, introduce online evaluation means to better evaluate students’ experimental situation and strengthen the cultivation of students’ program ability. This experimental teaching scheme can better improve students’ computer problem-solving ability.
Key words: Data Structure; Geographic Information Science; reform in experimental teaching