黃棟,王昌棟
(1.華南農業大學數學與信息學院,廣州 510642;2.中山大學數據科學與計算機學院,廣州 510006)
作為計算機相關專業的核心課程之一,《數據結構》課程的目標在于指導學生在計算機環境中理解數據、組織數據、加工數據,掌握數據的邏輯結構與存儲結構,學習設計相應的算法,把現實問題轉化為計算機內部的表示和處理[1]。《數據結構》課程是計算機程序設計的重要基礎,并且對于操作系統、數據庫系統以及其他許多大型應用也有著關鍵意義;《數據結構》課程教學對于計算機相關專業學生編程能力與專業素質的培養和提高有著至關重要的作用。
當前《數據結構》課程的教學工作往往側重于數據結構基礎理論及算法的講授與學習(例如線性結構、樹狀結構、圖狀結構等基本結構,以及排序算法、查找算法、圖遍歷算法等基本算法)。這些基本理論與經典算法的講授有利于計算機相關專業學生夯實計算機編程基礎,并培養計算機算法思維;但是,在當前大數據時代背景下,在《數據結構》教學過程中僅僅講授這些基本理論知識則可能導致學生“吃不飽”、興趣難提高的問題出現。
隨著信息技術的迅速發展,國家社會、經濟、生活的諸多領域產生了海量的數據信息;伴隨著海量數據的存儲、處理以及分析的巨大需求,數據挖掘、機器學習、人工智能等新興研究方向日益興起并受到廣泛關注。在此時代背景下,一方面,《數據結構》課程相關理論知識仍然是諸多前沿研究領域的重要基礎;另一方面,這些基礎理論知識也面臨著大數據時代的諸多新問題與新挑戰。教師在講授《數據結構》課程的過程中,如果可以將基礎理論知識與時代特點相融合、與前沿領域相融合,不僅可以提高學生的學習熱情,而且也可以在教學過程中培養學生的大數據思維與學科前沿意識。對此,如何在《數據結構》課程的教學工作中兼顧基礎知識與學科前沿、理論與實踐并重,是教學改革研究中具有重要意義的一個問題,也是本文著重探討解決的一個問題。接下來,本文將從教學內容創新、教學方式改革、具體改革方案等幾個方面,對大數據時代背景下《數據結構》課程的教學創新與改革展開闡述。
教學內容是課程教學的主體所在,科學合理的教學內容選取與安排對于課程教學至關重要[2-3]。《數據結構》課程的基礎教學內容與當前大數據分析、數據挖掘等前沿領域有著諸多緊密關聯之處,教師可以合理挖掘、有機結合,將學科前沿知識適當穿插于《數據結構》教學內容的講解與分析。
(1)以前沿話題為引導,促進基礎內容教學。
計算機技術發展迅速,前沿技術與前沿問題層出不窮;但是究其根本,這些前沿技術往往可以落腳于若干基礎知識與基礎問題。教師在講授新內容之前,可以選取一些前沿問題作為引導,進而引出相關基礎知識的講解,不僅可以提升學生的學習興趣,還可以促進學生在課程知識學習之前先行展開發散思考。例如,在講解算法的時間與空間復雜度之前,可以結合韓國棋手李世石與人工智能AlphaGo的人機大戰,提出問題:在計算機性能越來越強大的今天,為何仍然有很多問題無法用計算機很好解決?在中國象棋與國際象棋方面,計算機早在十余年前既已戰勝頂尖人類棋手,但為何在圍棋方面則直到最近才終于取得突破?圍棋和象棋的問題難度差別在哪里?——進而,在前沿問題作為引導的基礎上,順勢講解算法復雜度的概念與要點,并分析常數級、對數級、多項式級、指數級、階乘級等不同級別復雜度,從而促進學生對于算法復雜度相關內容理解。除以上示例之外,現實計算機許多其他前沿問題均可作為引子,帶入《數據結構》課堂。
(2)以基礎理論為依托,拓展前沿技術理解。
在《數據結構》教學過程中,前沿問題不僅可以作為講解知識之前的引子,還可以在基礎知識講解之后作為深入理解的生動題材。例如,在講解稀疏矩陣的基礎上,可以將課堂教學內容進一步引入到圖像與視頻數據的存儲與壓縮等前沿問題上,結合稀疏矩陣探討圖像與視頻存儲壓縮的基本原理及相關應用,通過適當的教學內容切換來深化學生對基礎知識的掌握以及對前沿問題的理解。
在教學內容創新的基礎上,教學方式創新也是新時期《數據結構》教學工作的一個重要方面。在課程教學活動中采用科學合理、生動靈活、形式多樣的教學方式,可以促進教學內容更好傳達,引導學生更深入理解。針對大數據時代背景與《數據結構》課程特點,相關教學方式創新可以從課堂教學與實踐教學兩個方面著手,具體如下所述。
(1)以問題討論與分析為主線的互動式課堂教學
有效的課堂互動可以調動學生學習興趣、增強學生課堂參與感[4]。對于《數據結構》的課程教學,可以采用以問題討論與分析為主線的互動教學方式。在互動內容上,一是可以選取基本理論中的重要內容展開深入討論,二是可以選取具有代表性的前沿問題展開剖析。在互動形式上,教師作為主導,學生作為主體,教師以問題引導學生發散思維,鼓勵學生主動參與討論和闡述思路,在互動式的課堂教學中增進學生對課程內容及現實問題的理解。
(2)基礎與前沿相結合的多層次實踐教學
實踐教學是《數據結構》課程教學中重要的一環[5]。對于教師而言,不僅要引導學生通過實踐編程來夯實《數據結構》基礎知識,還要適當“跳出課本”讓學生得到多層次的實踐鍛煉。具體地,實踐教學可以從課后上機練習、實驗課現場考核、課程綜合設計等多個方面展開,除此之外還可以鼓勵部分有興趣的學生進行更多具有挑戰性的實踐編程鍛煉,包括(但不限于)以下幾個方面:(1)鼓勵和指導學生參與程序設計類比賽或軟件設計類比賽;(2)根據教師自身的科研特長與科研方向,選取部分難度適中、具有代表性的研究內容(例如數據挖掘和大數據分析等方向的相關研究問題),鼓勵學生去探索實踐;(3)以實際開發項目或科研項目帶動學生將理論知識應用于項目實踐。由此,通過多層次、多方位的實踐教學,引導學生將基礎理論算法應用于現實問題,培養學生全方面的計算機專業思維能力。
以教學內容創新與教學方式改革為主干(如前所述),本文《數據結構》課程教學改革的具體實施方案主要包括以下幾個方面(見圖1):
(1)明確改革目標
由傳統《數據結構》課程以講授基礎理論為主的教學模式,轉向與時代結合、與數據挖掘前沿結合的《數據結構》教學新模式,實現數據結構理論基礎與學科前沿方向的相互融合與相互促進。
(2)創新教學內容
在保持《數據結構》基礎理論講授的基礎上,加入數據挖掘與大數據分析等領域前沿的、與數據結構相關的知識,兼顧基礎與前沿,豐富《數據結構》課程知識體系。

圖1 結合大數據時代背景的《數據結構》課程教學改革方案
(3)改進課堂教學方式
在常規講授式課堂教學的基礎上,進一步探索研究互動式課堂教學方式,以具有代表性的理論或問題的討論與分析為主線,加強課堂互動,提升學生興趣,改善教學效果。
(4)探索實踐教學方式
結合基礎理論與前沿應用,探索研究課后練習、課堂上機、綜合設計等多層次相結合的實踐教學方式,以實踐促理論,增強學生思考能力與編程能力。
(5)提升課程培養效果
在創新教學內容、改革課堂教學方式與實踐教學方式的基礎上,增強學生對基礎理論的理解,增進對學科前沿的認識,培養學生的計算機專業綜合素質。
本文對大數據時代背景下的《數據結構》課程教學新模式進行研究,探索將大數據前沿知識與《數據結構》課程基礎知識相融合的教學內容創新,并在教學方式上研究以問題討論與分析為主線的互動式課堂教學方式以及理論與應用相結合的多層次實踐教學方式。通過適應時代特點的《數據結構》教學模式改革,培養學生全方面的計算機思維能力與實踐能力。
[1]嚴蔚敏,吳偉民.數據結構(C語言版)[M].北京:清華大學出版社,2012.
[2]蔣莉,梁榮華,黃鮮萍.數據結構課程教學研究[J].計算機教育,2011(9):97-99.
[3]賀春林.《數據結構》課程教學改革[J].四川師范學院學報:自然科學版,2003(1):19-21.
[4]唐世剛,鐘萬林.互動式教學模式構建研究[J].教育理論與實踐,2013(18):42-43.
[5]楊曉波,陳邦澤.數據結構課程實踐教學體系研究[J].實驗技術與管理,2013(8):165-166.