国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數(shù)據(jù)結構課程教學方法的探索

2019-03-16 06:12:46張蕾花奇芹榮靜
計算機時代 2019年2期
關鍵詞:引導教學教學改革實驗教學

張蕾 花奇芹 榮靜

摘? 要: 分析歸納了數(shù)據(jù)結構課程實際教學中存在的問題,并根據(jù)這些問題對傳統(tǒng)的教學方法進行了一定的改進,提出了課前復習、注重引導教學、圖文并茂地講解算法、強化實踐教學等教學方法。實踐證明,改進的教學方法調(diào)動了學生積極性,提高了學生的學習效率和實踐動手能力。

關鍵詞: 數(shù)據(jù)結構課程; 引導教學; 實驗教學; 教學改革

中圖分類號:G642? ? ? ? ? 文獻標志碼:A? ? ? ?文章編號:1006-8228(2019)02-72-04

Exploration on teaching method of data structure course

Zhang Lei, Hua Qiqin, Rong Jing

(Guangling College, Yangzhou University, Yangzhou, Jiangsu 225000, China)

Abstract: The problems existing in the actual teaching of data structure course are analyzed and summarized. According to these problems, the traditional teaching method is improved in this paper, with the teaching methods such as reviewing before class, paying attention to guiding teaching, explaining algorithm with graphics, and strengthening practical teaching etc. The practice proves that the improved teaching method mobilizes students' enthusiasm, and improves students' learning efficiency and practical ability.

Key words: data structure course; guiding teaching; experimental teaching; reform in education

0 引言

數(shù)據(jù)結構是一門研究非數(shù)值計算的程序設計問題中計算機的操作對象以及它們之間的關系和操作等的學科[1]。數(shù)據(jù)結構是指相互之間存在一定關系的數(shù)據(jù)元素的集合。數(shù)據(jù)結構課程主要探討了各種經(jīng)典數(shù)據(jù)結構的邏輯特性、物理存儲特性以及數(shù)據(jù)的各種運算操作。經(jīng)典的數(shù)據(jù)結構包括線性結構、樹型結構及圖型結構。數(shù)據(jù)結構課程是計算機專業(yè)一門綜合性的專業(yè)基礎課和專業(yè)核心課,是計算機專業(yè)學生考研的必備課程,為學生今后的科學研究、軟件開發(fā)、技術管理等工作奠定了堅實的理論基礎。該課程內(nèi)容范圍廣、知識點多、概念抽象難懂,大部分學生反映學習起來比較吃力,能夠理解書本上的算法,但上機操作時沒有頭緒無法用C語言將相應的算法實現(xiàn)。

本文歸納了在實際課程教學中常遇到的問題,并針對這些問題,從理論教學和實踐教學兩方面進行了改進,以提高學生的理論、實踐動手能力。

1 課程教學中存在的問題

目前,高校的數(shù)據(jù)結構課程的教學仍以課堂理論授課為主、實踐教學為輔。學生在學習的過程中缺乏主動性和積極性,學習興趣不高,導致教學效果不理想,主要有以下幾個方面的問題。

1.1 課程內(nèi)容繁多且難懂

數(shù)據(jù)結構課程的內(nèi)容范圍廣、知識點多。數(shù)據(jù)結構課程探討了線性結構、樹型結構和圖型結構的邏輯結構、存儲結構和基本操作運算的實現(xiàn)以及各種查找算法和排序算法的實現(xiàn)[2]。該課程理論性強、內(nèi)容抽象難懂,要求學生有一定的數(shù)學邏輯思維和計算分析能力。課程內(nèi)容繁多并且難懂,學生很容易產(chǎn)生畏難情緒,自暴自棄。

1.2 學生的基礎薄弱

計算機程序類課程是數(shù)據(jù)結構課程的先導課程。想學好數(shù)據(jù)結構課程,必須牢固地掌握C語言的知識并能夠靈活地運用。C語言程序設計課程是在大一第一學期開設的課程,數(shù)據(jù)結構課程是在大二第二學期開設的課程。很多學生在學習數(shù)據(jù)結構課程時,已經(jīng)不太記得C語言的基本知識了。數(shù)據(jù)結構課程中會大量地運用到指針、結構體和函數(shù)。然而這部分知識是在C語言課程的最后幾個章節(jié),很多學生只為了應付考試去記憶C語言的基礎語法了,而沒有深刻地理解并掌握指針、結構體和函數(shù)這部分知識。大部分學生的編程基礎比較薄弱,無法將書本上類C語言描述的算法轉(zhuǎn)化為C語言程序。

1.3 學生實踐動手能力差

目前,大部分高?!皵?shù)據(jù)結構”課程的實踐環(huán)節(jié)課時較少。以揚州大學計算機科學與技術專業(yè)教學大綱為例,數(shù)據(jù)結構課程的總課時為64課時,理論學時為48課時,上機實踐課時為16課時。高校的數(shù)據(jù)結構課程更偏重于理論教學,重理論輕實踐,實踐的考評主要依賴實驗報告。很多學生在學完數(shù)據(jù)結構課程后,仍然不能用程序設計語言編寫基本的查找、排序算法,更何況是運用數(shù)據(jù)結構的知識解決生活中的實際問題。

2 教學方法的改進

2.1 對C語言的知識進行復習

C語言程序設計課程是數(shù)據(jù)結構課程的基礎,C語言程序設計課程學習的好壞將直接影響數(shù)據(jù)結構課程學習的效果。在數(shù)據(jù)結構課程開課的第一周的課上,任課教師會對C語言課程中指針、結構體、函數(shù)部分的知識進行適當?shù)膹土?,對這部分內(nèi)容進行梳理和強化,為數(shù)據(jù)結構課程的講解奠定基礎。

2.2 注重引導教學

數(shù)據(jù)結構課程內(nèi)容繁雜、晦澀難懂。任課教師需要在教學過程中注重引導教學,采用靈活多樣的教學方式激發(fā)學生對課程的興趣[3]。

任課教師在教學過程可以多引入一些有趣的例子、故事或者電影的情節(jié)來講解知識點。將晦澀難懂的知識點融入到鮮活有趣的情境中,增強學生的學習興趣。比如:講解鏈表邏輯結構時,可以引入警匪片中每個臥底都有一個單線聯(lián)系的上司;講解棧的特性時,可以引入物流裝車,先裝入車的物品后出,后裝入車的物品先出,形象生動地表現(xiàn)出了棧的先進后出的特性;講解隊列先進先出的特性時,可以引入學生在食堂排隊就餐的實例和去銀行排隊叫號的實例;講解樹的知識時,可以引入家族的家譜的案例,每個家族都有一個祖先,祖先有多個孩子,孩子又繼續(xù)生養(yǎng)孩子,不斷遞歸,直至最年輕的一代成員,形象生動地表現(xiàn)出樹的一對多的特性;講解圖的時候,可以引入高速公路網(wǎng)和鐵路網(wǎng)。通過實際生活中案例的講解,將抽象的概念轉(zhuǎn)變?yōu)橐粋€直觀形象的問題,活躍了課堂氣氛,調(diào)動了學生的學習積極性,增強了學生的學習興趣。

同時,任課教師需要注重啟發(fā)式教學,通過問題的拋出引導學生自主學習,將學生從知識的被動接收者轉(zhuǎn)變?yōu)橹鲃訉W習者。當代著名學者波爾普說過“正是問題激發(fā)我們?nèi)W習,去發(fā)展知識,去實踐,去觀察”。一位好的教師不僅僅是傳道解惑者,更應該是學生的引導者,引領學生自主地發(fā)現(xiàn)問題、提出問題、分析問題和解決問題。例如:在講解完順序表和單鏈表的特性之后,引導學生自己分析在什么樣的情況下選擇順序表合適、在什么樣的情況下選擇單鏈表為宜;在介紹單鏈表需要設置頭結點時,先讓學生自己思考在單鏈表中途插入結點指針的變化以及在第一個結點前插入結點指針的變化有什么不同,從而引出在單鏈表中設置頭結點,來將插入的指針操作統(tǒng)一起來。通過啟發(fā)式教學,激發(fā)了學生主動去思考問題,加深了學生對知識的理解,提高了課堂教學效果。

2.3 圖文并茂地講解算法

數(shù)據(jù)結構課程中包含很多的算法,并且算法內(nèi)容抽象難懂。任課教師在講解算法時需要采用多種教學手段,將板書、ppt與微課相結合。在教學過程中,多引入圖像、動畫,生動形象地演繹算法運行的動態(tài)過程,增強算法的理解性[4]。例如,在學習鏈表時,指針的操作比較多,學生對這部分知識混淆不清。如果采用圖文并茂的講解方式,立刻就會產(chǎn)生不一樣的效果。

圖1展示了在單鏈表中指針p所指向的結點后插入一個新結點的過程,圖2展示了在單鏈表中刪除指針p所指向的結點。通過圖像、公式、算法偽代碼的講解,學生就很容易理解單鏈表的插入和刪除的過程。

在指針p所指向的結點后插入一個新結點,指針變化為:

s->next=p->next;

p->next=s;

單鏈表的插入代碼為:

Status ListInsert_L(LNode *L, int i, ElemType e) {

//在以L為頭結點的單鏈表的第i個位置插入值為e的結點

LNode *p=L; j=0;

while(p&&j<i-1)

{ p=p->next; ++j; } //尋找第i-1個結點

if(!p||j>i-1)

return ERROR; //j大于表長或者小于1

s=(LNode*)malloc(sizeof(LNode)); //生成新結點

s->data=e; s->next=p->next; //插入L中

p->next=s;

return OK;

}

在指針p所指向的結點后刪除一個結點,指針變化為:

p->next=q->next;

free(q);

單鏈表的刪除代碼為:

Status ListDelete_L(LNode *L, int i, ElemType &e) {

//刪除以L為頭指針(帶頭結點)單鏈表中第i個結點

LNode *p=L, *q; int j=0;

while(p->next&&j<i-1) { p=p->next; ++j; }

q=p->next; p->next=q->next;? //刪除并釋放結點

e=q->data; free(q);

return OK;

}

2.4 強化實踐教學

數(shù)據(jù)結構課程是一門理論與實踐綜合的課程,實踐教學的重要程度不亞于理論傳授[5]。為了幫助學生更好地理解數(shù)據(jù)結構的知識、鍛煉學生的實踐動手能力,在實踐環(huán)節(jié),分別在實踐內(nèi)容和實踐考評方法兩方面進行探討和改進。

⑴ 實踐內(nèi)容的設置

數(shù)據(jù)結構課程的實驗分為兩個部分:基礎性實驗和拓展性實驗,實驗內(nèi)容的布置由淺入深[6]。

基礎性實驗的內(nèi)容為常用數(shù)據(jù)結構的基本操作、各種查找和排序算法。基礎性要求學生將書本上類C語言描述的算法轉(zhuǎn)化為C語言程序。基礎性實驗是實驗環(huán)節(jié)的關鍵。通過基礎性實驗,學生能夠更深刻地理解數(shù)據(jù)結構課程的基礎知識,能夠發(fā)現(xiàn)自己在知識和技能上的漏洞,及時進行查漏補缺?;A性實驗的內(nèi)容安排如表1所示?;A性實驗的成功,增強了學生的自信心,調(diào)動了學生的積極性。

拓展性實驗是讓學生運用數(shù)據(jù)結構知識完成實際生活中問題的一些題目,比如電子通信簿的實現(xiàn),約瑟夫環(huán)問題,表達式求值問題,行編輯程序等。拓展性實驗是在基礎性實驗后開設的,拓展性實驗需要學生利用大量的課外時間去完成。學生可以自行組織團隊一起完成拓展性實驗,團隊成員數(shù)一般為3-5人。通過拓展性實驗的完成,不僅加強了學生的實踐動手能力,更加強了學生的表達能力和團隊合作能力。

⑵ 實踐考評方法的改進

首先,在課程考核的過程中,課程實驗的成績將占據(jù)到總成績20%的比例。其中,實驗成績=70%基礎實驗成績+30%的拓展性實驗成績。比例的調(diào)整會讓學生更加重視數(shù)據(jù)結構課程的實驗環(huán)節(jié),從而強化實踐教學。

實踐的考評環(huán)節(jié)包括程序驗收、程序改進和實驗報告三個環(huán)節(jié)。程序驗收環(huán)節(jié)中,任課教師讓學生演示自己的程序,根據(jù)學生的程序提出一些問題讓學生口頭回答,并對學生的程序提出一定的建議,讓學生去做相應的改進。任課教師根據(jù)學生改進的程序以及程序驗收環(huán)節(jié)的表現(xiàn)給出一定的分數(shù)。實驗的成績主要由程序驗收環(huán)節(jié)的表現(xiàn)和實驗報告共同決定,實驗報告的成績只占實驗成績的30%。實踐考評環(huán)節(jié)的改進,便于教師發(fā)現(xiàn)抄襲他人代碼蒙混過關的學生,對積極投入實驗的學生更加公平,調(diào)動了學生的學習積極性。

3 結束語

實踐證明,數(shù)據(jù)結構課程的教學改革,激發(fā)了學生的學習興趣,調(diào)動了學生的學習積極性。學生的到課率、理論試卷成績以及實際動手能力都得到了提高。在以后的教學工作中,仍需研究如何根據(jù)學生的個性及差異來教學,真正達到因材施教,從而提高教學效果。

參考文獻(References):

[1] 嚴蔚敏,吳偉明.數(shù)據(jù)結構(C語言版)[M].清華大學出版社,1997.

[2] 徐薇,王志海.數(shù)據(jù)結構課程研究性教學理論及方法探索[J].計算機教育,2012.1:35-38

[3] 張惠珍,馬淑嬌.“數(shù)據(jù)結構”課程的教學方法改進探討[J].上海理工大學學報(社會科學版),2018.2:174-178

[4] 霍玲玲,王智,孫江.數(shù)據(jù)結構教學方法的研究[J].計算機教育,2015.2:73-76

[5] 周海巖,陳宏明,殷路.“數(shù)據(jù)結構”課程教學的思考[J].教育理論與實踐,2010.30(6):62

[6] 余艷,劉燕麗,李琳娜.數(shù)據(jù)結構實踐教學內(nèi)容設置的分析與思考[J].實驗技術與管理,2014.4:171-173

猜你喜歡
引導教學教學改革實驗教學
小議初中化學演示實驗教學
甘肅教育(2020年4期)2020-09-11 07:42:36
電容器的實驗教學
物理之友(2020年12期)2020-07-16 05:39:20
對初中化學實驗教學的認識和體會
甘肅教育(2020年8期)2020-06-11 06:10:04
幾何體在高中數(shù)學實驗教學中的應用
基于人才培養(yǎng)的技工學校德育實效性研究
成才之路(2016年25期)2016-10-08 09:51:08
現(xiàn)代信息技術在高職數(shù)學教學改革中的應用研究
科技視界(2016年20期)2016-09-29 12:59:03
以職業(yè)技能競賽為導向的高職單片機實踐教學改革研究
科技視界(2016年20期)2016-09-29 11:20:38
微課時代高等數(shù)學教學改革的實踐與探索
科技視界(2016年20期)2016-09-29 11:16:19
善于運用“錯誤資源”,讓數(shù)學課堂更精彩
考試周刊(2016年24期)2016-05-27 00:02:45
放手教學,讓孩子自由飛翔
考試周刊(2016年20期)2016-04-14 00:31:26
通山县| 蒲城县| 诸城市| 喜德县| 华坪县| 荣昌县| 凉城县| 沽源县| 通渭县| 梁平县| 新巴尔虎左旗| 永新县| 永登县| 出国| 石城县| 安多县| 山东| 乐都县| 敦化市| 喀喇沁旗| 安吉县| 和平区| 叶城县| 酉阳| 云阳县| 五河县| 青海省| 宣恩县| 昌吉市| 金华市| 紫金县| 图们市| 汉源县| 娱乐| 确山县| 桑植县| 岳普湖县| 广灵县| 大洼县| 敖汉旗| 津南区|