解 輝
摘要 在總結(jié)以前教學(xué)經(jīng)驗(yàn)基礎(chǔ)上,結(jié)合二叉樹性質(zhì)的實(shí)際教學(xué)需求,設(shè)計(jì)“理論講解——實(shí)例對(duì)照講解——游戲化理解與加深”的3步教學(xué)過程。通過實(shí)際的教學(xué)運(yùn)用,證明該過程能夠滿足不同學(xué)習(xí)水平的學(xué)生理解和掌握該部分知識(shí)的要求,達(dá)到較好的教學(xué)效果。
關(guān)鍵詞 教學(xué)過程;實(shí)例;游戲;二叉樹
中圖分類號(hào):G642.1 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1671-489X(2009)21-0030-02
Design for Teaching Process with Case and Game//Xie Hui
Abstract Based on prior teaching experience summary and combined with the binary tree teaching function needs, designed theory explain, examples contrast explain, the game of understanding and deepening, all the teaching process in 3 steps. Using this methods in teaching process, we prove that the process can meet the needs of different levels of students to understand and acquire this part of knowledge, to achieve better teaching results.
Key words teaching process; case; game; binary tree
Authors address Computer Department of Qinghai University, Xining, 810016, China
數(shù)據(jù)結(jié)構(gòu)課程是高等院校計(jì)算機(jī)類專業(yè)學(xué)習(xí)的一門重要專業(yè)基礎(chǔ)課,而二叉樹是該門課程中非常重要的組成部分[1-5]。在講解二叉樹的一些性質(zhì)時(shí)如果學(xué)生沒能取得很好的理解和掌握,將會(huì)對(duì)后續(xù)內(nèi)容的學(xué)習(xí)有很大的影響。
比如在講解二叉樹的性質(zhì)“對(duì)任何一棵二叉樹,葉結(jié)點(diǎn)個(gè)數(shù)n0,度為2的結(jié)點(diǎn)個(gè)數(shù)n2,則n0=n2+1”時(shí),傳統(tǒng)過程為:“二叉樹的葉子數(shù)目為n0,度為2的節(jié)點(diǎn)數(shù)為n2,度為1的節(jié)點(diǎn)數(shù)為n1,那么該樹的節(jié)點(diǎn)數(shù)為n0+n1+n2;而樹中有邊n1+n2,這樣樹的總結(jié)點(diǎn)數(shù)又可表示為n1+n2+1;那么由n0+n1+n2=n1+2n2+1可推導(dǎo)出n0=n2+1或n2=n0-1的公式?!?/p>
這個(gè)數(shù)學(xué)推導(dǎo)過程很簡(jiǎn)單,但是對(duì)學(xué)生理解不是太直觀,很難把n0和n2之間的邏輯關(guān)系形象化,更難把n0,n1和n2三者之間的邏輯關(guān)系形象化,經(jīng)常發(fā)現(xiàn)學(xué)生有這樣的疑惑:為什么n0和n2之間就成了n2=n0-1或n0=n2+1的關(guān)系呢?雖然知道數(shù)學(xué)推導(dǎo)出來的公式?jīng)]有錯(cuò),但就是對(duì)它們之間這種數(shù)學(xué)關(guān)系的理解不是很明了、很直觀。而在邏輯性較強(qiáng)的理工科課程中,迷惑容易導(dǎo)致連鎖反映,容易打擊學(xué)生的積極性,影響后續(xù)的教學(xué)效果。相對(duì)這些學(xué)生,真正的教學(xué)目標(biāo)沒有達(dá)到[4,6]。
關(guān)于數(shù)據(jù)結(jié)構(gòu)教學(xué),很多同行也結(jié)合實(shí)際做了相應(yīng)的研究[3-5]。那么到底怎么樣講解可以使得學(xué)生容易接受并在腦子中有一個(gè)形象化、直觀化的印象和理解呢?其實(shí)理論若能與形象化的生活實(shí)例結(jié)合,往往可以收到良好的效果。尤其若能再融入一些游戲化的環(huán)節(jié),則可以達(dá)到事半功倍的效果。在總結(jié)以前上課經(jīng)驗(yàn)的基礎(chǔ)上,設(shè)計(jì)“理論講解——實(shí)例對(duì)照講解——游戲化理解與加深”3步教學(xué)過程,基本能滿足不同學(xué)習(xí)水平學(xué)生的學(xué)習(xí)要求,達(dá)到較好的教學(xué)目標(biāo)。
1 理論講解:生產(chǎn)消費(fèi)的過程
1.1 介紹該性質(zhì),用傳統(tǒng)的方式進(jìn)行公式推導(dǎo)
1.2 比喻形式的理論過程講解講解過程可以引入這樣的生產(chǎn)與消費(fèi)比喻形式:每個(gè)結(jié)點(diǎn)有0、1或2個(gè)子樹,有子樹則必有對(duì)應(yīng)的“邊”,稱該結(jié)點(diǎn)生產(chǎn)了“邊”,有幾個(gè)子樹則生產(chǎn)幾條邊;除根節(jié)點(diǎn)外,其他每個(gè)結(jié)點(diǎn)都有父節(jié)點(diǎn),也有對(duì)應(yīng)的“邊”與父節(jié)點(diǎn)相連,稱該結(jié)點(diǎn)消費(fèi)了1條邊。
那么從總體生產(chǎn)消費(fèi)的角度看,在任意一個(gè)二叉樹中,邊的生產(chǎn):總計(jì)n0個(gè)度為0的葉子結(jié)點(diǎn)生產(chǎn)了0條邊,總計(jì)n1個(gè)度為1的結(jié)點(diǎn)生產(chǎn)了n1條邊,總計(jì)n2個(gè)度為2的結(jié)點(diǎn)生產(chǎn)了2*n2條邊,全部所有結(jié)點(diǎn)總計(jì)生產(chǎn)邊數(shù)為0+n1+2*n2。邊的消費(fèi):所有n0+n1+n2個(gè)結(jié)點(diǎn)中的每個(gè)非根結(jié)點(diǎn)都需要消費(fèi)1條邊,這樣除根節(jié)點(diǎn)外總共需要消費(fèi)n0+n1+n2-1條邊。由于整個(gè)樹中的每條邊都會(huì)連接一個(gè)父節(jié)點(diǎn)和子節(jié)點(diǎn),即邊的生產(chǎn)量與消費(fèi)量是相等的,即0+n1+2*n2=n0+n1+n2-1,亦即有n0=n2+1成立。
從每個(gè)結(jié)點(diǎn)的生產(chǎn)和消費(fèi)量來看,在任意一個(gè)二叉樹中,由于根節(jié)點(diǎn)(不管其度為幾)不消費(fèi)邊,等價(jià)于其為整個(gè)樹多貢獻(xiàn)了1條邊;度為的0的結(jié)點(diǎn)(除根節(jié)點(diǎn)外)生產(chǎn)0條邊,消耗1條邊,邊的貢獻(xiàn)為-1;度為1的結(jié)點(diǎn)(除根節(jié)點(diǎn)外)生產(chǎn)1條邊,消費(fèi)1條邊,邊的貢獻(xiàn)數(shù)記為0;度為2的結(jié)點(diǎn)(除根節(jié)點(diǎn)外)生產(chǎn)2條邊,消費(fèi)1條邊,邊的貢獻(xiàn)數(shù)記為1。這樣就可以看做度為0的結(jié)點(diǎn)所需邊是由根結(jié)點(diǎn)和度為2的邊來提供的,因?yàn)檫叺纳a(chǎn)與消費(fèi)是平衡的,即n0=n2+1。
1.3 結(jié)合圖例的驗(yàn)證圖1畫出典型的一些二叉樹,讓學(xué)生按照二叉樹定義,根節(jié)點(diǎn)、葉子節(jié)點(diǎn)、度為2的節(jié)點(diǎn)、度為1的節(jié)點(diǎn)等概念,從各典型二叉樹中找出相應(yīng)的節(jié)點(diǎn)數(shù)目和邊的數(shù)目,并分別用n0記錄葉子數(shù)目,n2記錄度為2的節(jié)點(diǎn)數(shù),n1記錄度為1的節(jié)點(diǎn)數(shù),驗(yàn)證一下公式n0=n2+1或n2=n0-1是否成立。同時(shí)也可以按照消費(fèi)生成比喻進(jìn)行驗(yàn)證。
2 實(shí)例對(duì)比講解舉例(實(shí)例問題驅(qū)動(dòng)的手段)
為了讓學(xué)生能夠進(jìn)一步明白二叉樹的這個(gè)性質(zhì),可以在上述的理論講解后引入實(shí)例進(jìn)行對(duì)比講解。
假設(shè)你是公司的CEO,你的目的就是為了不斷擴(kuò)大公司的經(jīng)營范圍和實(shí)力從而賺更多的錢,擴(kuò)大公司實(shí)力的一個(gè)途徑就是根據(jù)業(yè)務(wù)需要注冊(cè)自己的子公司(子公司也可以注冊(cè)它自己的子公司),但是政府規(guī)定每個(gè)公司(包括子公司)最多可以從商業(yè)管理部門申請(qǐng)到2張licence,并立即利用每張licence注冊(cè)一個(gè)子公司。當(dāng)然,若每個(gè)公司(包括子公司)根據(jù)業(yè)務(wù)可以申請(qǐng)注冊(cè)2個(gè)或一個(gè)子公司,也可以不申請(qǐng)注冊(cè)子公司。為了管理方便,將擁有2個(gè)子公司的母公司歸類為集團(tuán)級(jí)公司,擁有一個(gè)子公司的母公司歸類為骨干級(jí)公司,沒有任何子公司的公司劃歸為業(yè)務(wù)級(jí)公司。另外,為了區(qū)別初始公司(即剛開始擔(dān)任CEO時(shí)那唯一的公司)與后續(xù)所有子公司,將初始公司叫做總部公司,并且總部公司在擔(dān)任CEO之時(shí)已經(jīng)存在,不需要申請(qǐng)licence注冊(cè)。作為管理者,你在某次年終統(tǒng)計(jì)時(shí),統(tǒng)計(jì)到公司目前已經(jīng)拓展到n2個(gè)集團(tuán)級(jí)公司,n1個(gè)骨干級(jí)公司,那么業(yè)務(wù)級(jí)公司的數(shù)量n0是否能夠算出來呢?所有公司的總數(shù)n和3種級(jí)別公司各自的總數(shù)目之間有什么樣的關(guān)系呢?
在分析這些不同級(jí)別公司之間的數(shù)目關(guān)系時(shí),有一個(gè)很重要的線索就是licence,它是連接子母公司的橋梁。仔細(xì)分析會(huì)發(fā)現(xiàn),任何一個(gè)子公司的產(chǎn)生都需要一個(gè)licence,也就是說每個(gè)子公司會(huì)“消費(fèi)”一個(gè)licence;另外,任何一個(gè)集團(tuán)級(jí)公司(不包括總部公司)也會(huì)“生產(chǎn)”出2個(gè)licence,任何一個(gè)骨干公司會(huì)“生產(chǎn)”出1個(gè)licence,業(yè)務(wù)公司“生產(chǎn)”0個(gè)licence。從生產(chǎn)與消費(fèi)licence的角度看,該問題的實(shí)質(zhì)其實(shí)就與第一部分的比喻形式的理論過程講解內(nèi)容一樣,也會(huì)很自然得到集團(tuán)級(jí)數(shù)目與業(yè)務(wù)級(jí)公司數(shù)目間的關(guān)系:n2+1=n0。
3 游戲化的理解和加深過程
為了讓學(xué)生對(duì)該性質(zhì)有更加深刻的理解和體會(huì),設(shè)計(jì)如圖2所示名為“找朋友”的課堂互動(dòng)游戲。游戲中你自己找到的朋友稱為“新朋友”,對(duì)你的“新朋友”來講,你是他的“老朋友”。圖中的是一條帶子,白色端系在“老朋友”身上,黑色端系在“新朋友”身上。
規(guī)則:1)每個(gè)人只能找0、1或2個(gè)“新朋友”,找到后按照帶子的顏色端要求系在新老朋友身上;2)自己只能在被某個(gè)“老朋友”找到后才能再去找自己“新朋友”,但不能找任何一個(gè)有“老朋友”或“新朋友”的同學(xué)做朋友;3)游戲只能由一個(gè)學(xué)生發(fā)起,該學(xué)生沒有“老朋友”,直接開始找他的“新朋友”。
游戲結(jié)束時(shí),讓大家看看有0個(gè)“新朋友”的學(xué)生數(shù)目n0,1個(gè)“新朋友”的學(xué)生數(shù)目n1,2個(gè)“新朋友”的學(xué)生數(shù)目n2之間的關(guān)系,再結(jié)合前面2個(gè)教學(xué)步驟中生產(chǎn)消費(fèi)的比喻,看看黑白帶子與n0、n1和n2間的關(guān)系,這些關(guān)系是否驗(yàn)證了n0=n2+1。
通過該游戲不僅可以加深學(xué)生的知識(shí)理解和印象,還能起到調(diào)節(jié)課堂氣氛,增加學(xué)習(xí)興趣的效果。結(jié)合課堂實(shí)際,有時(shí)把游戲部分放在課堂開始部分會(huì)有更好的效果。
把上述3步教學(xué)過程用于實(shí)際教學(xué)后總體上取得很好的教學(xué)效果。同時(shí)在教學(xué)過程中根據(jù)實(shí)際教學(xué)需求,可以適當(dāng)?shù)厣崛?shí)例講解或游戲化步驟,也可以調(diào)整這2個(gè)步驟在整個(gè)教學(xué)過程中的順序位置??傊?本文所述將實(shí)例與游戲化的思維融入二叉樹性質(zhì)的教學(xué)過程設(shè)計(jì),不僅有效改善了該節(jié)內(nèi)容的教學(xué)效果,而且對(duì)其他章節(jié)乃至其他課程的教學(xué)過程都有一定的參考價(jià)值。
參考文獻(xiàn)
[1]殷人昆.數(shù)據(jù)結(jié)構(gòu)(用面向?qū)ο蠓椒ㄅcC++語言描述)[M].第2版.北京:清華大學(xué)出版社,2008
[2]張銘.數(shù)據(jù)結(jié)構(gòu)與算法[M].北京:高等教育出版社,2008
[3]徐曉偉.《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法的探索與實(shí)踐[J].科技信息:學(xué)術(shù)版,2008(28)
[4]熱孜萬古麗·夏米西丁.《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法淺談[J].科技信息:科學(xué)·教研,2008(35)
[5]陳錦濤.電網(wǎng)監(jiān)控專業(yè)《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)方法探索[J].中國電力教育,2008(20)
[6]禹明秋.學(xué)與教的心理[M].北京:高等教育出版社,2004