杜輕 韓雪 石麗婷
摘要:該文分析了算法設(shè)計(jì)與分析課程教學(xué)和學(xué)生學(xué)習(xí)時(shí)存在的問題,根據(jù)近幾年積累的教學(xué)經(jīng)驗(yàn),提出了一些教學(xué)方法的建議,如互動(dòng)式教學(xué),板書和多媒體相結(jié)合,重視上機(jī)練習(xí)以及考核方式的改革。
關(guān)鍵詞:計(jì)算機(jī);算法設(shè)計(jì)與分析;教學(xué)方法
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)08-0102-02
21世紀(jì)以來,計(jì)算機(jī)的普及極大地改變了人們的生活。目前,各行業(yè)、各領(lǐng)域都廣泛采用了計(jì)算機(jī)信息技術(shù),并由此產(chǎn)生出設(shè)計(jì)并開發(fā)各種應(yīng)用軟件的需求。為了以最小的成本、最快的速度、最好的質(zhì)量開發(fā)出應(yīng)用軟件,就必須掌握并能設(shè)計(jì)出高效的算法。算法分析與設(shè)計(jì)是一門理論性與實(shí)踐性兼顧的課程,是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的一門很重要的專業(yè)課,該課程在整個(gè)教學(xué)體系中占有非常重要的地位。通過對(duì)計(jì)算機(jī)算法系統(tǒng)的學(xué)習(xí)與研究,理解和掌握算法設(shè)計(jì)的主要方法,培養(yǎng)對(duì)算法的計(jì)算復(fù)雜性進(jìn)行正確分析的能力,為獨(dú)立地設(shè)計(jì)算法和對(duì)給定算法進(jìn)行復(fù)雜性分析奠定堅(jiān)實(shí)的理論基礎(chǔ)[1]。
該課程不像其他記憶性的課程,它重在理解并能應(yīng)用到實(shí)際中,是一門集應(yīng)用性、實(shí)踐性及創(chuàng)新性為一體的綜合性課程。再加上這門課程相對(duì)枯燥、難度大,因此,對(duì)于很多教師來說,要想上好這門課程,成了一個(gè)很大的挑戰(zhàn)。該課程要求教師要有扎實(shí)的數(shù)學(xué)和數(shù)據(jù)結(jié)構(gòu)理論基礎(chǔ),還要有編程和科研經(jīng)歷,還要結(jié)合本課程的特點(diǎn),采用適當(dāng)?shù)慕虒W(xué)方法,才能使得學(xué)生把枯燥,難學(xué)的算法真正學(xué)會(huì),并應(yīng)用到以后的開發(fā)實(shí)踐中。
本文根據(jù)筆者的教學(xué)經(jīng)驗(yàn),總結(jié)了一些教學(xué)方法,包括互動(dòng)式教學(xué),板書和多媒體相結(jié)合以及考核方式的改革等。
1 算法課程教學(xué)及學(xué)生學(xué)習(xí)存在的問題
現(xiàn)在,算法設(shè)計(jì)與分析課程在教學(xué)和學(xué)生學(xué)習(xí)方面都存在著問題,經(jīng)過分析總結(jié)如下:
1)該課程難度較大:算法設(shè)計(jì)與分析課程中介紹的都是數(shù)學(xué)或計(jì)算機(jī)專業(yè)領(lǐng)域的經(jīng)典算法,例如動(dòng)態(tài)規(guī)劃和分支限界法。單純的算法思想比較抽象,課程本身難度較大,容易使學(xué)生對(duì)該門課程產(chǎn)生恐懼心理。
2)學(xué)生不感興趣:現(xiàn)在大多數(shù)學(xué)生功利性比較強(qiáng),學(xué)習(xí)一門課程時(shí),希望它馬上就能應(yīng)用到實(shí)際中。比如學(xué)習(xí)了靜態(tài)網(wǎng)頁設(shè)計(jì)就可以做網(wǎng)站,學(xué)習(xí)了asp、jsp等動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)就可以開發(fā)系統(tǒng)。學(xué)會(huì)了開發(fā)網(wǎng)站和系統(tǒng),就可以找到工作。所以學(xué)生對(duì)這些課程很感興趣。剛才提到的課程都是立竿見影,學(xué)完后都知道最終的目的,而算法設(shè)計(jì)與分析課程則不同。算法設(shè)計(jì)與分析課程屬于高層次的課程,各種編程語言是它的先修課程。沒有編程基礎(chǔ),沒有開發(fā)經(jīng)驗(yàn),談?wù)撍惴ň拖喈?dāng)于紙上談兵。因此,學(xué)生學(xué)習(xí)算法設(shè)計(jì)與分析課程時(shí),他們感覺不能立即用上,甚至覺得與以后找工作沒有太大關(guān)系。這種心理導(dǎo)致學(xué)生對(duì)該課程不感興趣,緊緊抱著混學(xué)分的思想去學(xué)習(xí),給教師授課帶來了很大的困難。
3)考核方式不太合理:目前,在大多數(shù)高校中針對(duì)算法設(shè)計(jì)與分析課程采用的考核方式和其他課程一樣,總成績=試卷成績*70%+平時(shí)成績*30%。這里的平時(shí)成績包括作業(yè),考勤和課堂表現(xiàn)。這種考核方式只能反映出學(xué)生對(duì)理論知識(shí)的掌握程度,但無法考核出學(xué)生對(duì)知識(shí)的真正應(yīng)用能力。采用這種傳統(tǒng)的考核方式檢驗(yàn)學(xué)生是否能把算法思想應(yīng)用到編程中,無法學(xué)以致用。
2教學(xué)方法探討
近年來,本人一直教授該門課程,現(xiàn)將自己教學(xué)過程中摸索的教學(xué)經(jīng)驗(yàn)以及教學(xué)改革建議進(jìn)行總結(jié),希望能對(duì)廣大教師有所幫助。
2.1互動(dòng)式教學(xué)
講授算法課程過程中,由于該門課程具有很強(qiáng)的邏輯性和抽象性,并且要求有較好的數(shù)學(xué)基礎(chǔ),很容易形成教師向?qū)W生的單向傳輸教學(xué)。這種情況下,課堂教學(xué)枯燥無味,學(xué)生沒有興趣去思考和回答教師的問題,以至于形成課堂氣氛死氣沉沉,教師自問自答的局面。
在講課過程中,教師應(yīng)時(shí)刻注意和學(xué)生的互動(dòng)。互動(dòng)式教學(xué)可以變傳統(tǒng)教學(xué)中的單向傳輸式教學(xué)為雙向互動(dòng)式,這樣可以提高學(xué)生學(xué)習(xí)該門課程的興趣。興趣是最好的老師,只有學(xué)生產(chǎn)生了興趣,才能更好的掌握算法知識(shí)并應(yīng)用到實(shí)際中。
教師實(shí)現(xiàn)互動(dòng)式教學(xué)的方法有很多種,比如可以通過提問的方式。這就要求教師在備課時(shí)下功夫,而不是簡單的備課本上的知識(shí)點(diǎn),而是吃透每一個(gè)知識(shí)點(diǎn),然后在相應(yīng)的知識(shí)點(diǎn)上為學(xué)生設(shè)置相應(yīng)的思考方向,提出問題,充分調(diào)動(dòng)學(xué)生的積極性,讓學(xué)生參與到課堂中來。同時(shí),學(xué)生也會(huì)在枯燥的理論知識(shí)中尋找到樂趣。
2.2傳統(tǒng)的板書教學(xué)和多媒體教學(xué)相結(jié)合,齊頭并進(jìn)
目前大多數(shù)高校計(jì)算機(jī)類的課程基本都使用多媒體進(jìn)行教學(xué)。傳統(tǒng)的黑板教學(xué)和多媒體教學(xué)各有利弊,我們應(yīng)根據(jù)教學(xué)內(nèi)容的需要,揚(yáng)長避短,選擇適當(dāng)?shù)慕虒W(xué)手段,而不是因多媒體的方便性,將單純的將黑板教學(xué)摒棄。在講解算法課程過程中,更是需要兩者的結(jié)合,才能收到良好的課堂教學(xué)效果。
采用多媒體教學(xué)的好處是可以加大課堂信息量,使得講課更加形象生動(dòng)。在講解算法課程第2章中的插入排序,選擇排序,歸并排序時(shí),就可以采用多媒體教學(xué)中視頻教學(xué)。三種排序算法很抽象,單純的靠講述加上板書教學(xué),學(xué)生很難掌握三種排序的算法思想,并且容易混淆。本人在講解該部分內(nèi)容時(shí),從網(wǎng)上找到了真人以民族舞蹈形式來表現(xiàn)各種計(jì)算機(jī)排序算法的工作原理的視頻。首先口頭介紹某種排序的算法思想,然后在學(xué)生對(duì)此排序有初步了解的基礎(chǔ)上,讓其觀看相應(yīng)的視頻,使得學(xué)生在輕松快樂的氛圍中掌握了排序算法,收到了很好的教學(xué)效果。
有些情況下,掌握某些經(jīng)典算法的核心思想需要教師采用傳統(tǒng)的黑板教學(xué),一步一步帶著學(xué)生去推導(dǎo),最終得到答案。如果此時(shí)采用ppt課件進(jìn)行教學(xué),就會(huì)加快講課的進(jìn)度,向下翻一頁可能答案就會(huì)直接出來,沒有給學(xué)生充分多的思考時(shí)間,沒有在學(xué)生腦中留下深刻的印象。比如講解棋盤覆蓋問題時(shí)(如圖1,圖2),如果采用板書教學(xué),一步一步去演示覆蓋的過程,學(xué)生的思路經(jīng)歷了從有到無的過程,在循序漸進(jìn)中掌握了知識(shí)。整個(gè)推導(dǎo)過程學(xué)生如同細(xì)細(xì)咀嚼了一個(gè)蘋果,不僅嘗到了味道,也吸收了營養(yǎng)。
2.3 重視上機(jī)練習(xí)
教室課堂上,教師向?qū)W生講授的是算法的基本思想。算法僅僅靠掌握理論知識(shí)是不夠的,必須把它應(yīng)用到編程中,才能真正去領(lǐng)會(huì)算法的思想和靈魂。脫離計(jì)算機(jī)和編程去談?wù)撍惴ň腿缤埳险劚?,是不切?shí)際的。
在教學(xué)過程中,教師至少應(yīng)把1/3的課程分給上機(jī)實(shí)驗(yàn)課,只有給學(xué)生充足的上機(jī)時(shí)間,才可以將算法的思想應(yīng)到實(shí)際中。當(dāng)然,作為教師必須努力找一些難度合適的題目,讓學(xué)生在實(shí)驗(yàn)課上完成,將教室課堂上學(xué)的理論知識(shí)有所應(yīng)用。通過上機(jī)實(shí)際操練,促進(jìn)學(xué)生真正掌握算法的精髓。
2.4考核方式改革
本文前面已經(jīng)分析過現(xiàn)在算法課程大多數(shù)學(xué)校采用的是以紙質(zhì)試卷為主的考核方式算作期末成績,其實(shí)這種考核方式和課程的性質(zhì)是互相矛盾的。算法課程是理論和實(shí)踐都很重要的一門課程,傳統(tǒng)的考核方式只能考查學(xué)生對(duì)理論知識(shí)的掌握程度。
本人對(duì)算法課程采用如下考核方式:
除常規(guī)期末試卷成績外,實(shí)驗(yàn)成績占的比例為40%,加大了實(shí)驗(yàn)成績所占的比例。這樣可以增強(qiáng)學(xué)生對(duì)實(shí)驗(yàn)上機(jī)課的重視程度,上機(jī)實(shí)驗(yàn)時(shí),學(xué)生會(huì)比較認(rèn)真,有助于他們能將算法的思想應(yīng)用編程中,培養(yǎng)學(xué)生的動(dòng)手和實(shí)踐能力。
3總結(jié)
筆者結(jié)合近幾年的課堂教學(xué)情況,分析了算法課程教學(xué)存在的問題,并針對(duì)這些問題提出了一些教學(xué)方法。當(dāng)然這些方法還需要進(jìn)一步的完善,進(jìn)而使算法課程的教學(xué)質(zhì)量能得到很大的提高。
參考文獻(xiàn):
[1] 李涵.“算法分析與設(shè)計(jì)”課程改革和實(shí)踐[J].中國電力教育,2010(16):74-75.
[2] 王曉東.計(jì)算機(jī)算法設(shè)計(jì)與分析[M].北京:電子工業(yè)出版社,2008.
[3] 劉波.“算法設(shè)計(jì)與分析”教學(xué)探討[J].高等理科教育,2007(4):78-80.
[4] 余祥宣,崔國華,鄒海明.計(jì)算機(jī)算法基礎(chǔ)[M].武漢:華中科技大學(xué)出版社,2006.
[5]馬健.啟發(fā)式教學(xué)法在課堂教學(xué)中的應(yīng)用[J].中國電子教育,2008(3):68-71.