?

算法分析與設計課程中的“三化一體”教學方法

2016-11-10 08:50王丹付利華杜金蓮
計算機教育 2016年7期
關鍵詞:教學方法改革

王丹 付利華 杜金蓮

摘要:具有抽象度高、理論與實際結合緊密特點的算法設計與分析課程是計算機類專業的重要課程之一,如何提升教學效果是教學組織的一個重大挑戰。針對目前教學存在的問題,文章探討如何進行教學內容和教學方法的改革,提出“三化一體”的教改思路,并圍繞教學內容的設計、教學方法的改進、教學過程的組織等環節闡述具體的實施過程。

關鍵詞:算法分析與設計;教學方法;改革

1.教學現狀分析

經典算法的基本思想、分析設計方法和實現技術是算法分析與設計課程的重點講授內容,要求學生能夠進行時間和空間復雜性分析。這些經典算法包括:分治法、動態規劃、貪心法、分支限界法、回溯法等。由于算法是問題的程序化解決方案,所以研究算法需要經過理解問題、確定問題的條件和應用范圍、建立相應的數學模型、開發相應的求解算法、證明算法的正確性、分析算法的效率等步驟,最后采用合適的程序語言,編制相應的軟件代碼。這一系列復雜的過程以及算法本身具有的高度抽象等特點,為教學帶來了一定的挑戰。在教學過程中我們發現:師生課堂互動不足、學生的學習興趣低、學生的主觀能動性無法得到激發,導致多數學生對算法的精髓理解不到位,只能機械地記憶算法的步驟,不能靈活地解決碰到的問題。如何根據學生的知識基礎,通過課內教學和課外學習的有機結合,激發學生積極思考、參與課堂討論,達到學生有效理解、分析與設計相關算法并加以靈活應用的教學目標,是教師在教學過程中需要不斷深思的問題。

2.“三化一體”的教學模式

2.1算法引入“例題化”

經典算法的基本概念、基本原理和基本方法及其實際應用是本門課程的教學重點,因此算法分析與設計的理論學習和解決實際問題是密切相關的。為了使抽象的算法變得具體化、形象化,便于學生體會和理解,并增強其學習興趣,算法設計與分析課程的教學組織需要精選典型的教學實例。

教學內容“例題化”的指導思想就是將知識點融匯在具體的、貼近生活的例題中,通過具體實例讓學生理解算法的基本思想、分析原理、基本概念、適用條件等,提高學生的學習興趣及主觀能動性,加強師生問的互動。在精選實例的過程中,尤其注重培養分析及解決問題的思想方法,按照“設計例題-提出問題-分析問題-開展算法設計-進行算法比較-得出結論”的講授層次,形成各環節精密銜接的講授主線。在啟發學生提出問題的教學實例的設計上下功夫,就能引人人勝,激發學生思考,產生互動效果,然后在整個教學過程中層層展開、有序遞進,通過比較、思考和消化,就能使學生較好地接受所學知識。

算法分析與設計課程涉及的_些經典案例的代碼已經存在,但在教學的實際使用中并不一定能夠原樣照搬,這就要引導學生在積極思考之后,在應對實際的問題時,通過改進大體相似的算法進行更深入的學習,獲得深層次的知識。因此,在講授算法設計與分析的經典技術和案例的同時,進一步結合項目工程中的實例和當前算法研究中的最新進展來闡述該課程的理論和應用背景。例如,社交網絡中的結構分析、生物信息學中的基因序列比對、智能交通中的目標識別與追蹤等都是目前算法的熱點研究課題。這些研究領域不僅要求編制高效的算法,還要關注相關問題的求解算法的有效性和高效性。因此,在進行算法設計與分析課程教學的同時,通過有選擇地結合這些領域的研究熱點,將該課程的教學內容置于具有時代背景的實際問題環境中,促進學生對所學知識的重要性和應用背景的認可,才能更好地激發其求知欲和探索欲。

2.2算法講解“多樣化”

如何在課堂上把抽象的算法講解變成形象具體的實例分析,提高學生對算法的感性認識,使用多樣化的教學方法必不可少。在課堂講授中,要求教師多采用問題導人式、啟發式、討論式等教學方法,以問題講解為核心、以算法思想與方法教學為重點、以解決應用問題為目標,不僅要注重算法思想的表述和算法的分析及實現,還要強調算法的比較,以促成學生掌握算法設計與分析的基本理論和方法,培養學生抽象思維、計算思維力、發散思維等方面的能力。

在實施多樣化算法講解時,第一個重要環節就是如何設計一系列具有啟發性的提問,并圍繞教學重點和難點,前后呼應形成閉合回路。其中的問題應蘊含:算法的起源是怎樣的、可解決的問題是哪些;算法的基本思想、組成要素的理解;算法的應用場景;與其他算法的區別;時間和空間復雜度的要求等。通過這些環節的學習使學生達到舉一反三、觸類旁通、掌握算法所體現的思想的教學目標。尤其是引入生活中具體實例,可提升學生面對具體問題時應用所學知識給出切實可行的解決方案的應用能力。

同時,在每一堂課中留出專門的時間開展課堂討論,鼓勵學生就教師或同學提出的問題進行討論,然后互相補充或質疑。教師則通過仔細分析學生發言,從學生模糊的表達中提取出實質性的觀點,指正其存在的問題,并對其中合理的部分給予充分的肯定。每次授課留出適量的時間進行課堂討論,調動學生的學習興趣,推動學生由被動學習變成主動學習,使教與學有效呼應。

“多樣化”的教學方法相結合,在教學觀念上強調了兩個轉變:一是從以“教”為中心轉到以“學”為中心;另一個是從知識傳授到能力培養,促成了從灌輸知識為主到提高能力為主的教學目標的達成,提升了課堂教學效果,將課堂變成了師生共同活動的場所。

2.3算法分析“差異化”

算法性能分析是衡量算法優劣的重要過程,通過算法分析可以進一步幫助學生理解影響算法性能的常見因素,有助于其在下一次算法設計過程中形成更優秀的算法。因此,在教學過程中,在講授新的算法時,教師除了注意講解算法本身,還要強調多種算法的分析與對比的有機結合,培養學生的發散思維能力。例如,在算法講解的例題選擇方面,設計具有多種求解方案的例題,要求學生使用不同種類的算法進行描述。通過比較學習,加深學生對不同算法的理解,更好地消化理解不同算法的設計思想的實現細節,體會不同算法的差異。例如,教師會分別用貪心算法、回溯法、分支限界法來分析解決最短路徑問題,使學生更深入、直接地理解算法的作用,做到舉一反三、增強體會,激發學生的探索欲望,也使學生理解到算法設計與分析理論授課時重點強調時空效率的原因,并在這方面養成自覺的學習習慣。

另外,還要啟發學生如何在實際的問題中選擇和運用多種算法。例如,有些問題可以使用貪心算法解決,也可以使用動態規劃算法解決。那么在實際的解決問題中,到底使用哪個呢?那就必須根據實際問題及其要求進行選擇。

在教學過程的設計方面,也充分考慮到學生知識基礎的差異性,遵循循序漸進的策略,按照基礎性、綜合性兩個層次進行分層次教學,讓學生在難度循序漸進的過程中完成分析和設計任務,期望隨著課程的深入進行,培養學生的興趣。

3.結語

算法分析與設計能力的養成對計算機類人才的培養具有很強的支撐作用,如何在教學中注重總結規律,使學生舉一反三、有效應用是教學獲得成功的關鍵。在算法分析與設計教學中對“三化一體”的教改思路進行了探索,提出了“圍繞問題的講解,將算法思想、算法表述、算法實現、算法比較有機結合”的課程建設思路,研究了“三化一體”的教學模式,重點圍繞著算法引入“例題化”、講解“多樣化”、算法分析“差異化”,并融“教、學、用”為一體的教學活動進行研討。實踐證明,基于“三化一體”的“教、學、用”措施互為補充,提升了課程的教學質量。

猜你喜歡
教學方法改革
基于gitee的皮膚科教學方法研究
高職院校音樂選修課信息化教學方法與實踐探索
THE XIAOGANG EXPERIMENT
《計算方法》關于插值法的教學方法研討
《計算方法》關于插值法的教學方法研討
小學語文字理教學方法探析
一圖讀懂供給側改革
改革創新
改革創新(二)
“改革”就是漲價嗎?
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合