牛為華 程曉榮 袁和金 龐春江
【摘要】 “算法設計與分析”是計算機相關專業的重要選修課程,本文對該課程的互動式教學模式進行了探討.通過教學模式的改革,有效提升了學生綜合運用所學知識解決問題的能力.
【關鍵詞】 互動式;算法設計;教學改革
【基金項目】 河北省高等教育教學改革研究與實踐項目“多層次螺旋式遞進的計算機系統能力培養課程建設”(2017GJJG220)和河北省高等學校創新創業教育教學改革研究與實踐項目“能源互聯網行業創新創業教育孵化體系研究與基地建設項目”(2017CXCY134).
一、引 言
“算法設計與分析”是計算機科學與技術專業的一門專業選修課,是一門理論性與實踐性兼顧的課程,旨在通過向學生介紹“算法設計和分析”的技術,加強學生的理論計算基礎,同時幫助學生了解、掌握理論計算學科算法方向的基礎知識.該課程主要針對典型非數值計算問題,重點闡述算法設計的典型方法,分析不同算法的時間和空間復雜度,為解決應用中的非數值計算問題奠定建立計算機解題模型、設計和分析算法的理論基礎.
二、課程設立的教學目標
通過本課程的學習,使學生了解算法的基本知識,掌握表示算法復雜性的各種符號的含義和性質,理解最優算法的含義;掌握遞歸法、分治算法、動態規劃、貪心算法、回溯算法、分支限界法的算法設計思想,能夠靈活應用這些算法設計技巧解決實際的問題.通過該課程的學習,為解決應用中的非數值計算問題奠定建立計算機解題模型、設計和分析算法的理論基礎,并對求解典型問題掌握必要的算法設計技術和編程技巧;同時,培養學生能夠根據具體問題設計和優化算法的能力.
三、互動式教學模式
應用案例教學模式將課堂所學知識和實際應用緊密聯系起來,通過分組協作、課堂討論等方式使學生加深對所學知識的理解和掌握程度,從而激發學生的學習興趣,增強學生學習的主動性和積極性.
(一)以問題求解為主線,建立合理課程體系
在計算機學科眾多專業課中,“算法設計與分析”難度略大,需要學生具備良好的數學基礎、抽象思維能力及程序設計技巧.因此,在教學內容上應循序漸進,逐步展開.利用簡單實例引出算法設計和分析的重要性,并分別介紹每種算法的思想方法、實現、算法描述及復雜性分析.在充分掌握各種算法知識點的基礎上,使用不同種算法完成同一問題.例如,在解決 0 1 背包問題上,可以使用動態規劃法和回溯法完成,這樣能夠加深學生對幾種算法特點的掌握.
(二)豐富課堂教學形式,優化教學平臺
根據整合好的課堂教學內容,一方面,通過不斷修改和發展課件,使學生能夠更容易理解授課內容;另一方面,增加互動環節,鼓勵學生提出在學習中遇到的問題和困難,進而引導學生拓寬思路,舉一反三發掘算法中的深層次問題.同時,利用網絡教學平臺的強大技術支持,增強教與學的互動性.
(三)實現實踐環節層次化,提升實踐能力
在實踐教學活動中加強實踐環節,輔助學生對抽象理論和方法的理解,搭建基礎理論與技術基礎的有機銜接,充分體現“理論→應用”的課程教育理念.實踐性教學活動由理論課內實驗、驗證性實驗和綜合設計性實驗以及課外創新實踐等子環節構成.實驗內容將趣味性和可操作性結合,既激發學生興趣,又強化基本訓練和綜合訓練,引導學生創新設計.
(四)建設與實際項目相結合的相關課程實踐項目,開展開放性實驗
將課程實踐分成兩種模式:一是開放性實踐教學,著重安排學生對課上所學知識的驗證性實驗,幫助學生理解、掌握課程知識;二是開放自主實驗,為實驗基礎好的學生提供一個進一步提高實驗技能的機會,學生提出具有設計性、研究性、創新性的實驗課題及實驗方案,由指導教師論證其可行性,由此培養學生的創新意識、創新精神和開拓能力.
四、結束語
通過對“算法設計與分析”課程的互動模式教學改革,學生的學習興趣有明顯的提高,學習的主動性加強,提高了學生運用所學知識解決問題的能力.
【參考文獻】
[1]劉偉,丁長松.“算法分析與設計”課程教學改革與實踐[J].工業和信息化教育,2017(3):62-65.
[2]郭良敏.《算法設計與分析》課程教學改革探討[J].電腦知識與技術,2016(35):120-121.
[3]方潔.《算法設計與分析》課程翻轉課堂教學模式探究[J].軟件導刊,2016(9):199-201.
[4]陳蕾,張怡婷,許建.基于創新能力培養的算法設計與分析課程教學改革[J].計算機教育,2010(20):27-29.
[5]孫紅麗,葉斌.淺談算法設計與分析課程的教學改革[J].太原大學教育學院學報,2005(4):54-56.
[6]陳蕾,張怡婷,許建.基于創新能力培養的算法設計與分析課程教學改革[J].計算機教育,2010(20):27-29.