戴彩艷 丁有偉 胡孔法

摘 要:在算法設計與分析的教學過程中,教師作為算法教學的引導者,應該巧妙引導學生積極主動的研究各種算法的自身的特點以及與其它算法之間存在的差別,思維導圖可以有效快速的幫助學生進行知識點的歸納,清晰明了的掌握多種算法的使用。本文主要對思維導圖在算法設計與分析教學中的應用進行和探討。從各個算法的自身特點以及各個算法之間的差異介紹如何建立思維導圖。以此提高在算法設計與分析教學過程中,有效提高課堂教學質量和效率,提高學生自主學習的積極性,幫助學生系統深入地掌握算法相關知識。
關鍵詞:算法設計與分析;思維導圖;知識點的歸納;自主學習的積極性
一、背景
算法設計與分析是在普通本科學生掌握數據結構和基礎編程語言基礎上開設的一門選修課。對算法知識的有效學習可以提升學生本身的能力,使得他們在眾多的算法比賽中取得好成績,并在機器學習發展大趨勢下,增強學生的就業優勢。算法的主要內容包含了五大主要部分,分別是:遞歸與分治、動態規劃、貪心算法、回溯法以及分支限界法。種類不多,但是很多學生在學習過程中,往往會分不清各種算法的特點和算法之間存在的區別,在遇到正式比賽的時候會弄不清楚用什么辦法解決。本人嘗試在教學過程中使用分小組討論、對同一個問題使用不同算法進行求解,但是效果不是很好。本研究就是在這個背景下產生的。
二、相關研究
思維導圖又叫做心智導圖、腦圖或者思維地圖。采用不同顏色的符號、圖形或者文字相結合的方式沿用方向與人類思維相同,簡單有效的對相關內容的知識點進行歸納總結。從眾多使用思維導圖輔助教學的情況來看,通過教師的引導,學生自身的學習積極性會得到提高,能夠提升自身的邏輯思維、創新思維。
國外學者從多個角度展開了思維導圖的研究[1],包括思維導圖功能探索、思維導圖教學以及思維導圖教學評價等。Remigio等[2]研究了思維導圖作為評估工具的應用。研究比較了使用兩種思維導圖評分方法的評分者之間的置信度,并將這些方法的評分與其他年終結果相關聯。
國內學者對思維導圖的研究范圍也很廣泛[3,4],涉及到各個層次的語文、數學、英語等科目。王奎[5]等人對思維可視化課堂教學進行了研究,發現采用這種方式可以幫助學生掌握文章的整體結構,幫助學生提高閱讀技巧。孫玲[6]研究了C語言教學過程中使用思維導圖可以將在知識點分門別類的區別開來,使得學生對知識點的理解條理清晰,增強學習的邏輯能力。
三、算法設計與分析的思維導圖構建
本研究擬在算法設計設計與分析教學過程中使用思維導圖,使用三步走策略引導學生自主全面的學習。分別是:
第一步:給出課前預習的思維導圖,引導學生圍繞重要知識點去自主研究下次課要講的算法的要點;
第二步:課堂上圍繞著重要知識點進行講解,對同類算法中不同類型的題目進行講解,并對算法使用的數據結構以及時間復雜度進行系統性的學習。學生在此過程中可以對沒有預習的漏洞進行查找和彌補;
第三步:課后歸納,對各個算法的思想以及對應類型的題目進行總結。在各個網站或者比賽中遇到同種算法不同類型的題目時,也方便記錄和復習。
思維導圖可以通過手工繪制也可以通過不同軟件繪制,對算法設計與分析這門課,繪制過程大體如下:
(一)畫出最大范圍,如:算法,字樣或者相應圖片;
(二)將范圍內的各個主題描述出來,本研究主要包括五個方面:遞歸與分治、動態規劃、貪心算法、回溯法以及分支限界法;
圖1 算法設計與分析教學過程中思維導圖的大體框架
(三)在每個主題后衍生出分支,各個分支可以用一個關鍵詞或者圖片表示,其中包含了各個算法的關鍵特點,采用的數據結構、不同類型經典算法,留出部分空白,以便后續遇到問題時進行添加;
(四)可以用不同箭頭連通不同算法,在連通線上采用方法生動表示出不同算法之間存在的區別。
(五)對同一算法不同類型的題目進行類型概括,比如貪心算法的不同題目,可以歸納為三大類:背包問題、日程安排問題、圖問題)?;厮莘梢詺w納為:背包問題、裝載問題以及圖問題等。
按照上述描述,算法設計與分析教學過程中思維導圖的大體形式如圖1所示。
四、總結
在算法設計與分析教學過程中使用思維導圖可以對不同算法的知識點進行概括,并能有序的對各個算法的思想,經典算法進行形象的記憶。以便于學生牢牢的掌握相關知識點,在以后的算法比賽中能夠靈活運用相應的算法去解題。
參考文獻:
[1]Pérez-Jiménez,Paul. Cooperative Learning A Current Snapshot: Before, During and After Implementation. Comparative Professional Pedagogy.2018.
[2]Remigio Zvauya, Shilpa Purandare, Nicola Young, Miranda Pallan. The Use of Mind Maps as an Assessment Tool in a Problem Based Learning Course. Creative Education,2017,8 (11):1782-1793.
[3]王娟,基于Scratch的創意計算思維可視化研究[D].上海:上海師范大學,2015.
[4]張曉雯,三年級畫圖教學中運用思維導圖培養邏輯思維的研究[D],南京師范大學,2019.
[5]王奎,在信息技術課堂中培養學生的邏輯思維能力[J].中國信息技術教學,2016(16):74-76.
[6]孫玲,C 程序邏輯思維訓練支持系統構建與應用[D],陜西師范大學,2014.