999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CDIO數據結構課程教學思考與改革*

2016-03-19 12:21:36陳靜張達敏劉國敏貴州大學大數據與信息學院貴州貴陽550025
高教學刊 2016年1期
關鍵詞:實踐能力

陳靜 張達敏 劉國敏(貴州大學大數據與信息學院,貴州貴陽550025)

?

基于CDIO數據結構課程教學思考與改革*

陳靜張達敏劉國敏
(貴州大學大數據與信息學院,貴州貴陽550025)

摘要:《數據結構》課程是計算機專業及其相關專業的核心課程,是一門注重知識思想學習和實踐性很強的課程。傳統的教學注重理論知識的講解,對動手實踐能力的培養較弱,導致學生對知識的運用能力較弱。該文章將CDIO的教育模式引入到數據結構的教學中,并采取一系列的教學改革措施,以達到知識片段系統化,以“小設計”、“大設計”和“作品”三個層次的程序設計實踐能力,以循序漸近地方式培養不同層次的學生。

關鍵詞:CDIO數據結構;實踐能力;做中學

*1.貴州省省級本科教學工程項目:“通信工程”專業綜合改革試點(黔教高發[2014]378號)

2.貴州省研究生教育教學改革重點課題:研究生教育質量保證和監督體系示范點建設(黔教研合JG字[2014]004)

Abstract:"Data structure" course is the core course of computer science and other related majors, and it focuses on learning of knowledge and thought and practical ability. The traditional teaching pays great attention to the theoretical knowledge while the cultivation of the practical ability is weak, which leads to students' poor ability of using knowledge. In the article, the CDIO education model is introduced into the teaching of data structure, and a series of measures of teaching reform are taken in order to make knowledge fragment integrate systematically. The article recommends cultivating students of different levels in a step-by-step manner by three levels of program practice ability: "small design", "major design," and "works".

Keywords:CDIO data structure; practical ability; study in practice

《數據結構》課程是計算機專業及其相關專業的核心課程,是一門注重知識思想學習和實踐性很強的課程。該門課程要求學生先掌握一門程序設計語言,在此基礎上學習數據結構的相關知識。由于數據結構知識的特殊性,要求學生掌握的是知識的思想,以便可以用任意一種程序設計語言來描述它。該課程的目標是在程序設計中能運用數據結構的相關知識,編寫出執行效率較高的程序代碼,提高解決實際問題的能力。

一、CDIO工程教育模式簡介

CDIO是一種新型的工程教育模式,它由麻省理工學院和瑞典皇家工學院等四所大學經過四年的探索研究,創立了CDIO工程教育理念,并成立了以CDIO命名的國際合作組織。CDIO工程教育模式中C代表構思(Conceive)、D代表設計(Design)、I代表實現(Implement)、O代表運作(Operate)[1]。該模式讓學生將課程理論知識與動手實踐相結合參與產品研發到產品運行的每一個環節,學生以主動的、實踐的、課程之間有機聯系的方式學習工程。CDIO工程教育理念注重培養學生的基礎知識學習能力、動手能力、團隊協作能力。

CDIO教育模式為學生提供一種強調工程基礎的、建立在真實世界的產品和系統的構思-設計-實現-運行(CDIO)過程的背景環境基礎上的工程教育。它的大綱首次將工程師必須具備的工程基礎知識、個人能力、人際團隊能力和整個CDIO全過程能力以逐級細化的方式表達出來,使工程教育改革具有更加明確的方向性、系統性。CDIO體現了系統性、科學性和先進性的統一,代表了當代工程教育的發展趨勢。

CDIO教育模式拋開了以往教育中注重理論知識輕視實踐的觀念,以工程項目為載體,強調“做中學”,在項目的實施過程中,使學生的知識和動手能力得到不斷的積累和鍛煉。截至目前,已有幾十所世界著名大學加入了CDIO組織,其機械系和航空航天系全面采用CDIO工程教育理念和教學大綱,取得了良好效果,按CDIO模式培養的學生深受社會與企業歡迎。

二、《數據結構》課程的特點及教學現狀

《數據結構》是計算機專業的核心課程。數據結構是介于數學、計算機硬件和計算機軟件三者之間的一門核心課程。數據結構這一門課的內容不僅是一般程序設計(特別是非數值性程序設計)的基礎,而且是設計和實現編譯程序、操作系統、數據庫系統及其他系統程序的重要基礎。

《數據結構》課程在以往的教學中通常是對基礎知識進行教學,選擇學生熟悉的程序設計語言對各種數據結構及基本操作進行描述。在此教學過程中,學生在學完《數據結構》課程后,并沒有清楚的了解《數據結構》這門課程在程序設計中的作用,及如何使用數據結構知識使算法效率更高及解決生活中的常見問題。導致了學生在學習中逐漸喪失了學習興趣,將知識的學習與知識學習的目的分離開來,最后只是學習了知識,而不知道該知識在什么時候用,可以怎么用。同時,由于數據結構知識的特殊性,它的學習注重知識思想性的學習,學習了思想就可以用任何一種程序設計語言對數據結構思想進行描述,導致了學生在學習的過程中,使用的是哪種程序設計語言進行教學,就只會用該程序設計語言描述數據結構,換一種程序設計語言描述就感覺非常困難,學生的動手實踐能力和解決問題的能力較弱,知識的掌握度不夠高,運用不夠熟練。

針對數據結構課程中出現的問題,目前也進行了大量的課程改革,主要體現在針對課堂教學中使用多媒體教學方式改善傳統教學方式所帶來的抽象,不易理解的問題,通過多媒體課件的制作,使得學生能夠了解當代碼執行時數據變化情況,數據變化細節展現在學生的面前,對知識的理解起到了很好的作用。另一方面,同時也加強了對實踐的要求,在實驗中不僅要求能把問題解決,還要求能進一步求出問題的最優解,提高了學生的學習主動性。

三、基于CDIO的《數據結構》課程教學改革措施

根據CDIO的教育理念,以培養學生的動手能力、團隊協作能力、工程能力為目的。需在學生學習數據結構課程之前學習某種程序設計語言。在基礎知識的教學過程當中,將生活中常見的待解決的問題引入到教學過程中,運用數據結構知識進行解決,使學生在理解基礎知識的基礎上,更能感性認識數據結構這門課程的作用,從而提高學生的學習興趣。

“做中學”是CDIO的核心思想之一,該思想的目的是激發學生的學習興趣。為了更好的提高學生的學習興趣,可以將教學與學習的重心從課堂轉移到實驗室機房。讓學生在實踐操作中掌握知識,體會知識是如何解決問題的。

數據結構改革的主要措施如下:

(一)課堂教學改革

在傳統教學方式下,更多的采用啟發式的教學。

由于學生的學習水平參差不齊,因此在教學過程中仍然主要采取傳統的教學方式,要求學生在教學前預習講授的知識,課堂教學過程中教師對于基礎知識進行詳細的講解,確保學生能準確的掌握這部分知識。在對基礎知識進行算法描述和靈活運用時,教師采用啟發式的教學。教師對這部分知識設計問題,使學生在問題的思考與回答中將該部分知識掌握,提高學生的邏輯思考能力,同時也提高了學生的自主學習能力。

例如在講解堆棧知識時,可以對學生在講授了堆棧的基本知識概念后,讓學生對比堆棧和線性表這兩種數據結構的異同之處,使學生能更好的理解堆棧的基本知識概念,加深知識印象。同時可以針對這部分的知識設計問題,如老鼠迷宮的問題。該問題要求學生深入掌握堆棧知識,同時能理解深度優先搜索算法。該問題用二維數組表示迷宮,一只老鼠從迷宮的左上角進入迷宮,編寫算法,尋找一條從迷宮右下角出去的路徑。由于學生只是學習了堆棧的基本知識,要解決這樣的問題對大多數學生來說比較困難,因此老師在課堂上可以對該問題給出部分解決思路,用一個m×n的二維數組來表示地圖,有墻的格子用1表示,沒有墻的格子用0表示。為了讓老鼠走路,我們可以假設老鼠只能依次按照東、南、西、北四個方向行走。老鼠很聰明,總是先判斷東方是否有路,如果有,則向東走;如果東方沒有路,才接著判斷南方……南方有路,則走南方,以此類推。由于老鼠已走過的格子不能重復走,因此對于已走過的格子,我們可以放一個“腳印”在上面,即把相應的格子設置為2就行了。這樣的格子表明已走過,不能再走[15]。當老師的解決思路告訴學生時,剩下的問題要求學生自己思考該如何運用堆棧知識解決。

我們可以設置棧S來保存老鼠走過的所有格子,最近走過的格子總是放在棧頂,當與“棧頂”格子p相鄰的格子(東、南、西、北)在地圖網格(二維數組)中的值不為0時,則表示再往下走已無路可走。此時,我們可以從S中出棧一個位置,并設該位置(格子)對應的值為3,表明該格子已無路可走。接下來以新的棧頂元素為當前位置(回溯),依次從東、南、西、北四個方向尋找可以走的位置,找到某位置后,把該位置入棧,表明走入該位置。繼續尋找下一個位置,直到某位置為end位置或者找不到合適的路徑,即棧為空時算法結束。主要解決方法如下[15]:

Position Cur,offset [4]={{0,1},{1,0},{0,-1},{-1,0}}; /*某格的相

鄰單元格的坐標偏移*/

int **M;

int i;

M=(int **)map;

Push(S,(ElemType*)&begin); /*起始結點入棧*/

M[begin.x][begin.y]=2; /*置一個腳印*/

while(!StackEmpty(S)){

StackTop(S,(ElemType*)&Cur); /*取棧頂元素(坐標)*/

if(Cur.x==end.x&&Cur.y==end.y)/*找到,直接退出即可*/

break;

for(i=0;i<4;i++)/*檢查相鄰可走坐標*/{

if(M[Cur.x+offset[i].x][Cur.y+offset[i].y]==0)/*這一格可以走的*/{

Cur.x=offset[i].x+Cur.x; Cur.y=offset[i].y+Cur.y; M[Cur.x][Cur.y]=2; /*留一個腳印,有興趣的還可以加上方向*/

Push(S,(ElemType*)&Cur);

break; /*退出循環*/

}

} /*for*/

if(i==4)/*四個方向都走遍無路可走,回溯*/{

M[Cur.x][Cur.y]=3; /*曾經走過的腳印,但走不通后往回走的腳印*/

Pop(S,(ElemType*)&Cur); /*棧頂位置退出路徑*/

}

} /*while*/

在這一部分的訓練中可以讓學生問題的解決思路用偽代碼或自然語言的形式寫下來,并不強求學生一定要用程序設計語言描述該問題,并把代碼調試成功。讓學生在解決問題的過程中掌握知識,并能運用知識解決問題。使學生明白數據結構的知識并不是抽象無用的,而是能實實在在的解決我們生活中的某些問題的。

(二)程序設計改革

在掌握了基礎知識的基礎上,鼓勵學生采用任意一種程序設計語言來描述算法。

由于數據結構知識可以用任意一種程序設計語言來進行描述。因此,在教學過程和實驗過程中,鼓勵學生使用多種程序設計語言來描述算法。該項改革的目的在于使學生能以自己所熟悉的學習方式來掌握該課程的知識。并能更加熟練的掌握一門程序設計語言。

目前在大多數教學中,采用的數據結構教材的描述語言方式都是C語言。導致了學生在學習完數據結構課程后只能運用C語言來描述數據結構,當要求用其他程序設計語言來描述各種數據結構時,就顯得束手無策了。因此在學生編寫程序時,可以要求學生在看懂,調試通過教材或老師要求的代碼時,鼓勵學生用其他的程序設計語言如JAVA把同樣的問題再描述一遍,以此來加深知識的掌握,增加學生的成就感,提高學生的學習興趣。

(三)數據結構實驗改革

在對每一個數據結構知識點設計實驗時,實驗的難度由淺到深,每一個實驗都是在前一個實驗完成的基礎上增加新的問題和難度,對于同一個問題使用不同的數據結構來實現,最終完成該知識點實驗后,學生可以得到一個對該知識點的系統掌握和理解。

例如,在隊列數據結構中,讓學生先完成循環隊列的基本操作實驗,如循環隊列的入隊、出隊、隊滿和隊空等基本操作的實現,這一類的實驗對于學生來說都可以算做驗證性的實驗,較為簡單,只要掌握了基礎知識就可以完成,可以算做常說的由淺入深中的“淺”了。當學生完成了這樣的實驗后,可以要求學生在此基礎上做較深的綜合設計性的實驗了。當然這樣的實驗要求學生用到前一個實驗的內容,如電路布線問題,在布線區域疊一個網格,該網格把布線區域劃分成n×m個方格,就像迷宮一樣,當從一個方格A的中心點連接到另一個方格B的中心點時,轉彎處必須采用直角。如果已經有某條線路經過一個方格,則封鎖該方格。使用A和B之間的最短路徑來作為布線路徑,以便減少信號的延遲。為了找到網格中位置A和B之間的最短路徑,先從位置A開始搜索,把A可到達的相鄰方格都標記為1(表示到達A的距離為1),然后把標號為1的方格可到達的相鄰方格都標記為2(表示到達A的距離為2),繼續進行下去,直到到達B或者找不到可到達的相鄰方格為止[15]。

在解決該問題的過程中就需要用到循環隊列的基本操作。這樣的問題可以算做是由淺入深中的“深”了。要解決這樣的問題必須深入理解隊列知識和廣度優先搜索算法原理。這種難度問題的解決對于現在的大多數學生要獨立解決還是很困難的,因此可以建議學生以分組的方式來協作完成。學生可以3-4人組建為團隊完成任務。按照CDIO模式,團隊成員確定任務和設計方案,完成成員分工,制定問題解決計劃,然后解決該問題,最后提交任務解決報告。通過這樣的綜合設計性任務的鍛煉,使學生從任務的分析,任務的解決,計算機模擬,團隊合作,動手能力各方面都得到一次全面的訓練。

實驗環節是知識掌握中最重要的環節。所有知識的掌握最終都要在實驗中進行實踐和驗證。因此數據結構實驗的設計就尤為重要。在實驗內容設計上由淺入深,先進行基礎知識的實驗,使得學生能更好的理解課堂理論知識,并能完整的寫出可運行的算法。在基礎實驗內容完成后,所設計的實驗項目為生活中較為常見的問題或小游戲問題的解決,適當給出問題解決的提示以及代碼片段,鼓勵學生獨立思考,完成整個算法。根據算法的實現,設計不同的實驗數據時得到的結果有何變化以及原因所在,培養學生深入思考能力。

以上三項改革措施實際上也是一個相輔相成,循序漸進的過程。學生在學習的初始階段主要集中在知識的理解和掌握,在此基礎上能用不同的程序設計語言描述算法,達到知識的熟練掌握,再后便是對知識的靈活運用,主要體現在實驗階段,通過教師對實驗項目的設計,使學生能系統掌握知識,并能解決生活中較為常見的小問題。它解決學生在學習該課程后,所學的知識片段系統化,最終以“小設計”、“大設計”和“作品”三個層次的程序設計實踐能力,以循序漸近地方式培養不同層次的學生。以“項目和任務驅動”為主線,結合“案例教學”、“研究式教學”手段,把理論教學和實踐教學進行無縫連接,以期獲得比傳統實踐方法更好的效果[15]。

四、結束語

本文針對數據結構教學過程中出現的問題進行了討論和改革,并提出了三個方面的改革措施,并運用在教學中,取得了良好的效果。在以后的教學過程中,利用CDIO教育創新模式,在《數據結構》這門課程中培養學生具有扎實的專業技術知識,通過項目驅動學習,在做中學,使得知識的理解更加牢固,同時知識與現實生活也充分結合。在未來的教學中,我們希望在《數據結構》課程中利用CDIO的工程教學理念,以任務為目的,基礎知識學習為基礎,驗證性實驗為核心,以“滾雪球”方式,將每一個實驗都逐漸“滾”成一個任務,以此達到真正學會知識,會用知識的目的。

參考文獻

[1]陳芳,王旭.基于CDIO的C語言教學改革[J].科技視界,2015 (2):96.

[2]王向輝,崔巍,徐俊麗.基于CDIO的數據庫課程教學改革方案研究[J].計算機教育,2011(2):38-41

[3]王艷玲,李秀媛.基于CDIO模式的單片機課程教學方法探討[J].計算機光盤軟件與應用,2014(15).

[4]郝宗波.數據結構課程教學改革探討[J].計算機教育,2011 (3):78-80.

[5]宋桂娟,楊勇虎,王文生.基于CDIO的數據結構課程教學改革與研究[J].電腦知識與技術,2010,6(3):755-756.

[6]楊蒙召,顧澤元,劉文強.CDIO理念在數據結構課程中的探索與實踐[J].計算機教育,2010(12):124-126.

[7]齊會娟,李德雄,劉麗娜.基于CDIO理念的“數據結構”課程改革與研究[J].石家莊鐵路職業技術學院學報,2011,10(2).

[8]曾曉輝,文展,付琳.CDIO模式下的數據結構教學體系探索[J].計算機教育,2015(2).

[9]曹海燕.基于CDIO模式的數據結構與算法教學改革研究[J].江蘇第二師范學院學報,2014(4):21-23.

[10]胡瑞娟.CDIO理念在數據結構課程教學中的實踐[J].電腦知識與技術,2014(1).

[11]嚴蔚敏,吳偉民.數據結構(C語言版)[M].北京:清華大學出

版社,2012.

[12]劉曉靜,黃維通,王曉英.西部地區CDIO理念下的數據結構與算法課程建設[J].計算機教育,2013(17).

[13]任雪萍,王立波,趙葆華.融入PIC-CDIO理念的“數據結構”課程教學改革[J].計算機教育,2012(12):29-32.

[14]于波,郭紅,李鵬.CDIO工程教育模式在數據結構與算法教學中的應用[J].黑龍江教育,2014(12).

[15]王力,陳靜.新編數據結構實驗指導——基于CDIO實訓[M].貴州:貴州大學出版社,2013.

作者簡介:陳靜(1981,4-),女,回族,貴州省貴陽市白云區,研究生,講師,教師,研究方向:計算機軟件應用。

中圖分類號:G642

文獻標志碼:A

文章編號:2096-000X(2016)01-0109-04

猜你喜歡
實踐能力
工農結合提升大學生實踐能力、創新能力的研究與實踐
大學教育(2016年11期)2016-11-16 20:09:43
淺談獨立院校大學生電子設計競賽的組織與實踐
大學教育(2016年11期)2016-11-16 19:54:34
地方高校學前教育專業手工制作課教學改革的探索與實踐
科教導刊(2016年27期)2016-11-15 21:49:52
大創項目對大學生實踐能力和創新精神培養的作用研究
科教導刊(2016年25期)2016-11-15 17:58:15
探究式教學在創新實踐課程中的應用
計算機教育(2016年7期)2016-11-10 08:27:41
《財政與金融》課程考核方式改革研究
以學科競賽為抓手,培養學生實踐能力的探索與實踐
科技視界(2016年22期)2016-10-18 16:47:12
基于科研思維和實踐能力培養的生物技術制藥教學改革研究
科技視界(2016年22期)2016-10-18 16:15:09
高校單片機課程設計教學方法探討
考試周刊(2016年77期)2016-10-09 11:36:54
芻議大學生實踐創新訓練計劃項目
大學教育(2016年9期)2016-10-09 08:03:54
主站蜘蛛池模板: 亚洲午夜综合网| 婷婷激情亚洲| 亚洲黄网在线| 国产毛片一区| 99视频精品在线观看| 亚洲成aⅴ人在线观看| 成人久久精品一区二区三区| 无码国产伊人| 天天爽免费视频| 深夜福利视频一区二区| 国产99视频免费精品是看6| 人妻无码中文字幕第一区| 欧美中文字幕在线视频| 成·人免费午夜无码视频在线观看 | 亚洲高清日韩heyzo| 91精品最新国内在线播放| 国产真实乱了在线播放| 久久午夜夜伦鲁鲁片无码免费| 亚洲日本一本dvd高清| 欧美日本在线| 国产精品美人久久久久久AV| 免费全部高H视频无码无遮掩| 热伊人99re久久精品最新地| 日日碰狠狠添天天爽| 97超碰精品成人国产| 无码一区二区波多野结衣播放搜索| 亚洲视屏在线观看| 国产高清在线观看| 亚洲精品制服丝袜二区| 动漫精品啪啪一区二区三区| 国产成人精品亚洲日本对白优播| 国产尤物视频在线| 狠狠v日韩v欧美v| 亚洲AV无码久久天堂| 天天综合天天综合| 国产1区2区在线观看| 国产成人8x视频一区二区| 国产成人a毛片在线| 亚洲午夜18| 青青操国产视频| 最新国产网站| 精品国产福利在线| 国产18页| 国产福利在线免费| 国产午夜福利在线小视频| 亚洲V日韩V无码一区二区| 在线视频精品一区| 久久久久青草大香线综合精品 | 亚洲国语自产一区第二页| v天堂中文在线| 人妻一本久道久久综合久久鬼色| 欧美成人午夜在线全部免费| 小说 亚洲 无码 精品| 国国产a国产片免费麻豆| 色久综合在线| a毛片在线免费观看| 中文字幕乱妇无码AV在线| 亚洲欧美激情小说另类| 午夜福利无码一区二区| 日韩视频免费| 久久免费观看视频| 国产小视频免费| 国产精品露脸视频| 亚洲国产中文在线二区三区免| 99精品免费在线| 97青草最新免费精品视频| 91小视频在线观看免费版高清| 鲁鲁鲁爽爽爽在线视频观看| 在线看免费无码av天堂的| a级毛片毛片免费观看久潮| 一本大道香蕉久中文在线播放| 99精品一区二区免费视频| 午夜免费小视频| 日本欧美成人免费| 99人妻碰碰碰久久久久禁片| 国产日韩精品一区在线不卡| 91po国产在线精品免费观看| 日本亚洲国产一区二区三区| 亚洲欧美另类中文字幕| 欧美在线天堂| 国产在线精品99一区不卡| 91精品国产一区自在线拍|