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

數據結構教學中的案例巧用

2010-12-31 00:00:00陳曉霞
計算機教育 2010年24期


  摘要:數據結構是計算機專業的重要課程之一,但由于其理論性過強,缺乏趣味性,學生理解困難,教學效果不好。針對這些現象,文章提出在數據結構課程的教學方式、教學手段、考試方式上引入利用案例驅動的方法,以培養具備扎實的理論基礎、較強的實踐操作能力和綜合表達能力的高素質學生。
  關鍵詞:數據結構;案例教學;教學改革
  
  1數據結構課程教學現狀及問題
  數據結構作為計算機和信息等專業的核心課程,在教學體系中起著舉足輕重的作用[1-4]。現階段國內數據結構課程受主流數據結構教材影響,多以傳授知識、利用偽代碼描述數據結構及其算法為主,輔以一定的編程實踐作為主要的教學模式。在這樣的教學模式下,對于當前大眾化教育背景下應用型高等工科院校的學生來說,學習掌握數據結構課程,根據實際問題動手設計數據結構算法并能付諸實踐成為一個難題,造成這種現象的主要原因有以下幾點:
  1) 在國內主流的數據結構教材普遍采用偽代碼的形式來描述算法,沒有源程序,學生在學習過程中,不能“親眼看見”算法執行流程,從而造成對算法理解的困難。
  2) 算法描述過于抽象,不夠直觀,教師在教學過程中利用“黑板+粉筆”或者PPT都很難形象直觀地演示算法,不利于學生理解算法。
  3) 傳統的教學模式強調理論教學,實踐環節不夠,造成學生動手能力差,有的學生會考試能做題,卻看不懂實現算法的程序,更別說自己動手編程實現算法。“數據結構”在計算機軟件開發領域的真正價值無法得到體現。
  就以上問題筆者對在數據結構課程教學過程中引入案例驅動的立體化教學改革研究作了初步研究。
  
  2選擇設計適當的案例以驅動數據結構課程教學改革
  2.1案例的設計與選擇
  案例選編是數據結構教學改革中的重要環節,選擇或設計適合學生、難易得當、繁簡相宜的案例,應包含學生已經學過的和即將學到的知識,并以此案例作為驅動進行課程的教學和學習,可以提高學生的學習興趣和學習效率,達到教學目的。
  筆者經過多年教學實踐,在教學過程中摸索了一系列案例作為各數據結構教學模塊的驅動,主要包括:以“一元多項式的四則運算”作為線性表結構特別是鏈表結構教學的驅動案例、以“迷宮路徑搜索”作為棧結構教學模塊的驅動案例、以“井字棋游戲”和“霍夫曼樹及霍夫曼編碼”作為樹結構教學模塊的驅動案例、以“校園導游咨詢”作為圖結構模塊的驅動案例,等等,如圖1~圖3所示。下面以較為簡單的鏈表結構為例闡述“一元多項式四則運算”案例如何驅動教學。
  2.2一元多項式四則案例驅動鏈表結構的教學
  一元多項式四則運算是清華大學嚴蔚敏教授編寫的經典教材中有關鏈表的應用的一個章節,但是在該章節中數據結構及算法由偽代碼構成,學生很難真正理解如何利用鏈表來實現一元多項式的四則運算。
  
  筆者在教學過程中已經積累了可視化的多項式四則運算程序[5],可以利用該應用程序進行課堂、課后的教學與學習。
  2.2.1案例驅動鏈表中結點的教學
  “結點”作為鏈表乃至樹和圖等各類數據結構來說是一個非常重要的概念,而對于初學數據結構的學生來說,大多數學生只掌握了基本數據類型的運算,“結點”概念過于抽象,往往使學生摸不著頭腦,從而影響整個數據結構課程的教學。
  通過教師講解一元多項式中的單項式如何在計算機中表示,即由系數(浮點型)、指數(整型)兩種基本數據類型構成一個復雜數據類型;一個單項式就是一個多項式的一個結點,利用這種方式使“鏈表中結點”這個比較抽象的概念具體化、形象化,進一步引導學生——要描述和實現這樣一個非簡單類型的“結點”,需要用C++中的類或者結構體來實現。
  2.2.2案例驅動鏈表基本操作的教學
  多個單項式“串成一串”便成為多項式,可以用“數組”來串聯這些單項式,也可以用“鏈條”來串聯這些單項式,教師可以一起與學生討論順序表和鏈表的各自的特點。這個案例主要體現鏈表的應用,教師引導學生分組討論如何實現串聯,即鏈表的初始化操作、結點插入鏈表以及從鏈表中刪除某個結點等一系列鏈表操作。
  多項式的四則運算特別是加、減法本質上是鏈表的合并過程,而鏈表的合并過程也就是結點的插入操作。因此學生們在理解鏈表基本操作的基礎上可以進一步學習其具體的應用。
  2.2.3案例驅動下鏈表實踐教學的改革
  只有理論學習而沒有實踐,這樣的學習成效是不完整的,不同層次的學生可以利用案例進行不同程度的學習。對于理論理解有困難的學生,他們可以通過上述圖形化界面的應用程序“親眼看到”結點在鏈表中的變化,該程序是可操作的、互動式的,通過輸入數據,可以幫助學生理解一個升序的一元多項式中插入一個任意單項式仍然要保持其升序狀態,需要在在鏈表適當的位置插入結點或者修改結點或者刪除結點,等等;對于算法可以理解但是無法讀懂源程序的學生,可以通過學習、調試源代碼,達到從理論理解到實踐應用的過渡;對于可以理解源代碼的學生,可以讓其嘗試編寫、添加一些具體的函數,增強學生的動手能力。上述一元多項式四則運算應用程序即為筆者的學生開發完成。
  對于這樣一個案例驅動的教學方式的改革實踐,僅僅有案例是不夠的,需要對傳統的教學模式和考試模式、課程組織方式等全方位立體化的改革。
  3教學模式與考試模式的改革
  3.1在教學方式上的改革
  傳統的教學方式是以教師在課堂上講解知識點,學生上機實踐以及課后做習題作為主要的教學模式,
  
  這樣就容易造成前文中提到的學生動手實踐能力低,會考試卻看不懂程序,不會動手編程這樣的局面,達不到應用型高等工科院校對學生的培養目標。只有將教師講解、課堂討論、匯報或答辯、教師或學生總結等多種教學方式相結合,才可以發揮案例驅動教學以達到教學目的要求。
  3.2在教學手段上要充分利用演示系統、精品課程網站等資源
  一些演示系統和國家級精品課程網站的資源可以幫助教學進行課堂教學以及學生課后學習,例如,上海交通大學數據結構為國家級精品課程,在該課程網站(http://jpkc.onlinesjtu.com/CourseShare/DataStructure/ Index.aspx )包含了相當豐富的教學資源,如約瑟夫環問題、漢諾塔問題、迷宮問題、火車車廂重排、四皇后問題等算法的動態演示過程、解決思路、算法描述、參考代碼等;另外,該網站還提供了一些數據結構中常用算法的動態交互操作實驗,如鏈表的插入和刪除、二叉樹遍歷、霍夫曼樹和霍夫曼編碼、聯通網的最小生成樹等。教師和學生可以充分利用這些非傳統的、動態交互式的應用程序實現使數據結構的學習不再單一化、抽象化。
  3.3在考試模式上改變“一考定輸贏”的方式
  我們借鑒國外Assignment形式,采用以小組為單位完成期末大作業、撰寫課程報告等多種方式相結合進行考核。期末作業的內容應與教學過程中的案例相結合,讓學生們模仿完成類似的、難易得當的應用程序的開發。為避免學生們從網上下載源代碼等非誠信的方式來完成期末作業,還要求他們撰寫課程報告并進行匯報答辯。
  由于學生個體的差異性,在組成小組時應保證小組成員的多樣化,有的小組成員擅長整體分析,有的小組成員擅長程序辨析,有的小組成員擅長總結報告,等等,學生們通過分工合作來完成期末作業可以增強學生們的團隊合作精神,也可以發揮各自的優點和特長。
  利用這種開放式的考試方式可以改變學生只在期末前夕用功學習就可以完成學業的現象,改變學生重理論輕實踐的思想,增強學生學習主動性,提高學生動手能力、表達能力。
  
  
  4與其他專業課程結合,真正發揮其核心作用
  在計算機專業或信息類學科專業中基本上都開設了C語言(或者C++)、面向對象與可視化程序設計等課程,數據結構課程應與這些課程相結合。
  4.1在面向對象程序設計語言課程中體現數據結構思想
  而對于數據結構而言,從上世紀90年代起國外已經逐步采用用C++或Java描述的數據結構教材,用C不能很好地描述數據結構中的抽象數據類型,只有使用面向對象程序設計語言中的類才能很自然地實現抽象數據類型的思想[1]。另外,目前軟件開發的主流方式仍然是采用面向對象的程序設計,因此筆者建議在計算機等專業中應開設C++課程,并以此作為計算機專業程序開發的主線語言,該課程應先于數據結構課程開設。
  在學習面向對象程序設計語言時,“類”和“對象”等概念非常抽象和難以理解,在教學過程中可以以數據結構中的一些簡單化的案例作為這些抽象概念的具體化。例如在初學“類”時可以以前文中所提到的多項式為例學習如何構造一個“多項式類”,有了一般的“多項式類”,那么具體的某個特定的參與運算的多項式就是這個類的對象。以此達到抽象概念形象化的目的,使得這樣的重要概念變得容易理解。
  
  4.2在數據結構課程中利用C++等語言實現算法,提高學生動手能力
  如果在數據結構課程中使用偽代碼作為算法描述的代碼,學生理解算法困難,難以動手實現。因此在學習了C++等語言的基礎上,在數據結構課程中所有數據結構及算法應以C++等語言作為描述語言,并要求學生在此基礎上完成各種作業,提高動手能力。
  4.3在可視化程序設計、信息論與編碼等其他專業課中體現數據結構的應用性
  在面向對象與可視化程序設計課程學習的過程中,教師應結合數據結構中學習過程中的各案例,讓學生在可視化編程環境中利用面向對象技術開發這些案例的圖形化界面應用程序。如前文中提到的各種案例的圖形化用戶界面的應用程序的開發,信息論中霍夫曼編碼的實現,等等;從而提高學生對數據結構的理解以及開發能力,并使課程設計變得言之有物。
  5結語
  案例教學能使理論與實踐更好地結合起來,通過對案例課題的分析、討論和實踐,可以更好地掌握理論及其實際應用[3],以案例驅動整個數據課程的教學模式、考試模式等立體化的教學改革,培養高素養的應用型人才。
  
  參考文獻:
  [1]

主站蜘蛛池模板: 国产成人区在线观看视频| 白浆免费视频国产精品视频| 亚洲日韩精品无码专区| 一级做a爰片久久免费| 中文字幕亚洲电影| 欧美中文字幕无线码视频| 在线a网站| 国产一区二区三区精品久久呦| 久久精品丝袜高跟鞋| 福利姬国产精品一区在线| 亚洲成在人线av品善网好看| 久久中文无码精品| 欧美精品伊人久久| 91精选国产大片| 亚洲欧美成aⅴ人在线观看| 天天躁日日躁狠狠躁中文字幕| 国产精品毛片一区视频播 | 亚洲三级片在线看| 免费人成在线观看视频色| 无码国产偷倩在线播放老年人| 97视频免费在线观看| 狠狠做深爱婷婷综合一区| 久久综合色视频| 性做久久久久久久免费看| 性网站在线观看| 亚洲日韩精品欧美中文字幕 | 人妻一本久道久久综合久久鬼色| 日韩一二三区视频精品| 2020精品极品国产色在线观看| 国产精品男人的天堂| 香港一级毛片免费看| 精品综合久久久久久97| 久久免费精品琪琪| 黄色福利在线| 日韩欧美中文亚洲高清在线| 99草精品视频| 亚洲成人播放| 在线免费看黄的网站| 欧美三级日韩三级| 亚洲欧洲日产无码AV| 日本五区在线不卡精品| 少妇高潮惨叫久久久久久| 中国一级特黄大片在线观看| 91视频日本| 欧美一区二区啪啪| 亚洲无码高清视频在线观看| 国产第一福利影院| 亚洲综合18p| 国产欧美日韩va另类在线播放| 97人人做人人爽香蕉精品| 九色视频一区| 国产自在线播放| 中文字幕免费在线视频| 97人妻精品专区久久久久| 538国产视频| 亚洲国产精品成人久久综合影院| 久久精品这里只有精99品| 国产青榴视频| 69免费在线视频| 伊人婷婷色香五月综合缴缴情| 在线不卡免费视频| 國產尤物AV尤物在線觀看| 四虎国产永久在线观看| 亚洲电影天堂在线国语对白| 成人综合久久综合| 亚洲av无码成人专区| 大学生久久香蕉国产线观看| 被公侵犯人妻少妇一区二区三区| 亚洲男女在线| 久久精品丝袜高跟鞋| 亚洲综合久久一本伊一区| 久久精品亚洲中文字幕乱码| 高清久久精品亚洲日韩Av| 国产精品一区在线麻豆| 国产第一页屁屁影院| 黑色丝袜高跟国产在线91| 欧美日韩91| 性视频久久| 超清无码熟妇人妻AV在线绿巨人| 亚洲AV成人一区国产精品| 一级一毛片a级毛片| 国产国产人在线成免费视频狼人色|