李彤巖+張敏+馬文英
摘要:《數據結構》是計算機相關工科專業的重要理論技術課,傳統的教學方法偏重理論教學,教學枯燥且效果不好。本文將CDIO的理念應用到《數據結構與算法設計》這門課程中,將項目和教學結合的思想引入到教學環節和實踐環節中,針對重點章節設計了工程實踐項目,使學生完成項目的同時鞏固對知識點的學習,這樣既鍛煉了學生的動手創新能力,也培養了學生的工程實踐能力。通過教學實踐證明,采用項目結合教學的教學模式能夠有效地調動學生的學習積極性,使得教學取得了較好的效果。
關鍵詞:CDIO;數據結構與算法設計;工程實踐
1. 引言
CDIO是2001年由美國麻省理工學院聯合瑞典的查爾姆斯技術大學、林克平大學以及皇家技術學院等高校,共同開發的一種全新的工程教育理念和實施體系[1,2]。CDIO工程教育模式注重培養學生掌握工程基礎理論知識和專業知識,更重要的是培養學生的工程實踐能力。在該模式培養下,學生能夠得到團隊精神培養和實踐創新能力培養,更進一步地把自己鍛煉成為高水平的工程師。
《數據結構與算法設計》是我校重點參與CDIO改革的一門核心必修課。該課程的抽象性、靈活性較高,其基礎課程是高級程序語言設計,如C語言。而其又是操作系統、軟件工程、數據庫、計算機圖形學等課程的基礎課,所以《數據結構與算法設計》在計算機體系中起到承上啟下的作用。該課程不僅是一般程序設計的基礎,更是實現大型應用程序的重要基礎。學生通過學習該課程,可以提高編程能力以及算法設計的能力。然而在實際教學實驗過程中,反映出來的問題是該課程教授起來的效果不好,學生學習起來難度很大。
因此,本文重點研究在CDIO模式下《數據結構與算法設計》實驗教學的改革方法。通過CDIO理念的灌輸和教學、實驗改革措施的實施,不僅使學生更好的掌握這門重要的學科,而且能夠讓學生對數據結構、編程思想和編程理念產生興趣,培養學生解決實際問題的能力。為以后的工程實踐奠定好的基礎。
2. 實驗教學內容的改革
《數據結構與算法設計》課程抽象性較強,平時的理論知識講授并不能將數據結構的相關算法表述的非常清楚。學生對于概念性的知識感覺已經掌握,一旦遇到實際問題無從下手。所以數據結構課程的實驗環節非常重要。通過實驗的設計和訓練,才能讓學生更好的理解數據結構算法,增加學生的動手能力和程序設計能力。以著重培養實踐型人才為目標,本課程加大了實踐教學部分的比重,并將項目的思想引入到實驗中去。讓學生參與到具體的項目開發,在實踐的過程中完成對理論知識的強化和鞏固,并初步形成團隊意識。下面以“樹”這章為例來說明這種項目引導模式的具體實施過程。
“樹”這章是數據結構核心的一個章節,也是學生接觸到的第一個非線性數據結構。該章節的程序算法設計相比較前幾個章節來說更加抽象難懂,因此原先的教學將本章的重點放在遍歷的幾種算法理論教學中。教學的結果是雖然學生可以掌握該章的理論方法,并能夠熟練完成習題,但是一遇到具體的程序設計就無從下手,而樹型數據結構的工程應用又是最廣泛的。怎么才能將理論和應用充分地結合起來,引起學生學習的興趣呢?本文介紹了一種將項目引入教學的改革方式。在本學院大數據挖掘團隊中,有一個項目是“基于數據挖掘的告警相關性分析”,就是利用數據挖掘的方法來尋找告警之間的關聯,從而查找故障的根源。在運用數據挖掘算法時,主要通過樹形結構來構造頻繁模式樹(見圖1),查找頻繁項的時候需要遍歷頻繁模式樹,從而通過頻繁項來生成關聯規則。學生通過組合團隊來參與此項目的開發。完成項目開發以后,學生不僅能夠熟練的掌握樹型數據結構的構造方法、遍歷方法及相關理論,而且能夠在具體的工程實踐中去解決生活中的問題,可以激發學習的興趣,也能培養學生的團隊協作能力。這樣,這么有難度的一章就輕松的通過完成項目的方式解決了。同樣的可以設計“網絡優化”的項目引入“圖”的實驗中,將“排隊論解決網絡數據包優化傳輸問題”項目引入“線性表,鏈表”的實驗中。
3. 總結
本文介紹了基于CDIO的《數據結構與算法設計》實驗課程改革方法,通過將項目引入課程教學,能夠激發學生和教師的積極性、主動性。通過通信工程試點班級的教學實驗,驗證了以上提出方法的有效性和科學性,今后可以逐步擴大到在所有班級和專業中推廣使用。
4. 致謝
本文由成都信息工程大學《數據結構與算法設計》精品在線課程項目支持。
圖1 根據告警數據構造頻繁模式樹
參考文獻
[1] Berggren K. CDIO: Aninternation alinitiative for reforming engineering education. World Transactions on Engineering and Technology Education, 3(l), 49-52.
[2] Crawley E. Rethinking Engineering Education: The CDIO Approach. New York: Springer Science Business Media, 2007
[3] 嚴蔚敏, 吳偉民. 數據結構(C語言版) [M]. 北京: 清華大學出版社, 2001
[4] 楊曉光. 數據結構實例教程[M]. 北京: 清華大學出版社&北京交通大學出版社, 2008
[5] 劉麗杰. 《數據結構》課程教學改革研究[J]. 長江大學學報(自然科學版). 2011, 2(8):132-134
[6] 馬曉波. 《數據結構》課程教學改革探討[J]. 軟件導刊. 2010, 3(9): 183-184
作者簡介:李彤巖,女,講師, 2010年畢業于電子科技大學,獲通信與信息系統專業博士學位。現為通信工程學院計算機通信教研室講師。endprint