亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于幾何學(xué)的二叉樹遍歷教學(xué)設(shè)計(jì)研究

        2016-04-08 07:08:31魏霞鄭勝
        大學(xué)教育 2016年3期
        關(guān)鍵詞:二叉樹數(shù)據(jù)結(jié)構(gòu)教學(xué)設(shè)計(jì)

        魏霞 鄭勝

        [摘 要]本研究通過(guò)把幾何學(xué)的相關(guān)知識(shí)遷移到《數(shù)據(jù)結(jié)構(gòu)》教學(xué)中,應(yīng)用幾何學(xué)的對(duì)稱特性和等腰三角形巧解二叉樹前序遍歷、中序遍歷和后序遍歷。把文字描述變?yōu)閳D形表述,思路清晰明了,教學(xué)效果顯著。

        [關(guān)鍵詞]數(shù)據(jù)結(jié)構(gòu);二叉樹;遍歷;幾何學(xué);教學(xué)設(shè)計(jì)

        [中圖分類號(hào)] O18 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 2095-3437(2016)03-0155-03

        《數(shù)據(jù)結(jié)構(gòu)》是計(jì)算機(jī)專業(yè)一門重要的基礎(chǔ)課,樹形結(jié)構(gòu)是《數(shù)據(jù)結(jié)構(gòu)》課程中的一種非線形數(shù)據(jù)結(jié)構(gòu)。二叉樹是樹形結(jié)構(gòu)的重點(diǎn),也是難點(diǎn)。遍歷是二叉樹中一個(gè)最重要的運(yùn)算,是在二叉樹上進(jìn)行其他運(yùn)算的基礎(chǔ)。因此,掌握二叉樹遍歷相當(dāng)重要。[1]然而,二叉樹是一種非線性結(jié)構(gòu),其遍歷不像線性鏈表那樣容易,無(wú)法通過(guò)簡(jiǎn)單的循環(huán)實(shí)現(xiàn)。如何通過(guò)簡(jiǎn)便可行的、通俗易懂的方法,讓學(xué)生理解和掌握二叉樹遍歷,值得廣大教師探索、研究。

        一、二叉樹遍歷算法

        二叉樹遍歷就是指按照一定的規(guī)則和順序,依次對(duì)樹中的所有結(jié)點(diǎn)做一次且僅被訪問(wèn)一次,即按一定規(guī)律排列成一個(gè)線性隊(duì)列。[2]二叉樹是一種遞歸定義的結(jié)構(gòu),包含根結(jié)點(diǎn)(N)、左子樹(L)、右子樹(R)三個(gè)部分。根據(jù)訪問(wèn)根結(jié)點(diǎn)與左右子樹先后進(jìn)行命名,二叉樹的遍歷有三種方式:前序遍歷(NLR)、中序遍歷(LNR)、后序遍歷(LRN)。對(duì)于這種傳統(tǒng)的方法,教師講解起來(lái)非常簡(jiǎn)單,但是學(xué)生比較難以掌握與應(yīng)用。特別是在做一些遍歷運(yùn)算的題目時(shí),雖然學(xué)生上課時(shí)聽得明白,但是做起題目來(lái)卻無(wú)從下手,思緒混亂。

        二、幾何學(xué)在二叉樹遍歷教學(xué)中的靈活應(yīng)用

        我們每個(gè)人都比較熟悉幾何學(xué),尤其是對(duì)稱性和等腰三角形。如何將我們熟知的幾何學(xué)應(yīng)用于二叉樹這一復(fù)雜的數(shù)據(jù)結(jié)構(gòu)教學(xué)中,簡(jiǎn)化復(fù)雜的問(wèn)題呢?本文將充分應(yīng)用牽移法思想,基于幾何學(xué)的淺顯概念及屬性,將幾何學(xué)與二叉樹遍歷教學(xué)聯(lián)系起來(lái),讓二叉樹遍歷教學(xué)由繁變簡(jiǎn),讓學(xué)生能夠深刻掌握并靈活應(yīng)用所學(xué)知識(shí)。

        (一)應(yīng)用對(duì)稱對(duì)比,掌握二叉樹遍歷算法定義

        從上述的前序遍歷、中序遍歷和后序遍歷三種遍歷的遞歸算法對(duì)比分析,可以以一個(gè)對(duì)稱性圖形對(duì)三類遍歷類型進(jìn)行教學(xué)。通過(guò)對(duì)比,可以讓三類遍歷類型簡(jiǎn)單明了、通俗易懂。圖1是二叉樹遍歷類型圖。

        圖1演示了二叉樹三種遍歷的過(guò)程。從整體來(lái)看,圖1是一個(gè)對(duì)稱的圖形;從中序遍歷本身來(lái)看,它也是一個(gè)單獨(dú)的對(duì)稱圖形。圖1演示圖應(yīng)用了軟件工程UML圖形設(shè)計(jì)元素、開始和結(jié)束的圖形標(biāo)記,可以讓學(xué)生通過(guò)圖形,了解二叉樹的三種遍歷的對(duì)比關(guān)系。

        (1)開始:前序遍歷開始在根結(jié)點(diǎn),中序遍歷開始在左子樹,后序遍歷開始也在左子樹;

        (2)結(jié)束:前序遍歷結(jié)束在右子樹,中序遍歷結(jié)束也在右子樹,后序遍歷結(jié)束在根結(jié)點(diǎn);

        (3)根結(jié)點(diǎn)遍歷情況:前序遍歷的根結(jié)點(diǎn)最先遍歷,中序遍歷的根結(jié)點(diǎn)在中間遍歷,后序遍歷的根結(jié)點(diǎn)最后遍歷。

        (二)應(yīng)用等腰三角形巧解二叉樹遍歷的運(yùn)算

        若要寫出圖2二叉樹的三種遍歷,很多學(xué)生無(wú)法理出一個(gè)清晰的思路。在此,本論文引入等腰三角形這個(gè)幾何圖形。

        從圖2可見,A、B、C三個(gè)結(jié)點(diǎn)就好比一個(gè)三角形的三個(gè)點(diǎn),其中,B、C為底點(diǎn),因而A、B、C三個(gè)結(jié)點(diǎn)可以組成一個(gè)等腰三角形;B、D、E三個(gè)結(jié)點(diǎn)也好比一個(gè)三角形的三個(gè)點(diǎn),其中,D、E為底點(diǎn),因而B、D、E三個(gè)結(jié)點(diǎn)可以組成一個(gè)等腰三角形;以此類推,可以把二叉對(duì)所有結(jié)點(diǎn)進(jìn)行組合,看做多個(gè)三角形的組合體。而對(duì)于像CF、FH和DG這種只有兩個(gè)結(jié)點(diǎn)的,我們可以假設(shè)其存在第三個(gè)點(diǎn),比如,對(duì)于D、G兩個(gè)結(jié)點(diǎn),可以假設(shè)其還存在一個(gè)左子樹結(jié)點(diǎn),虛擬一個(gè)等腰三角形。在應(yīng)用等腰三角形進(jìn)行遍歷書寫時(shí),我們將按照從上到下,一層一層地查找三角形。這種不會(huì)出現(xiàn)混淆情況。以下是圖3所示的二叉樹的三種遍歷巧解過(guò)程。

        1.前序遍歷巧解過(guò)程

        如圖3所示,按照①②③④⑤五個(gè)等腰三角形的順序,逐一按前序遍歷的定義書寫二叉樹各結(jié)點(diǎn),并結(jié)合圖1所示二叉樹遍歷的規(guī)則,從上到下、從左向右,按順序?qū)懗龆鏄浔闅v。其步驟如下:

        第一步,寫第①個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的前序遍歷是ABC。

        第二步,寫第②個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的前序遍歷是BDE。此時(shí),結(jié)合第一步所得,綜合得到一個(gè)遍歷順序ABDEC。也可這么理解,即相當(dāng)于用遍歷BDE替換了遍歷ABC中的B。

        第三步,寫第③個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有左底點(diǎn),即以C為父結(jié)點(diǎn)的二叉樹沒有左子結(jié)點(diǎn),即為空,在此,我們以“□”表示。同樣,根據(jù)前序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的前序遍歷是C□F,在第二步綜合得到的遍歷順序ABDEC的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷ABDEC□F。道理與第二步相同,即相當(dāng)于用遍歷C□F替換了遍歷ABDEC中的C。

        第四步,寫第④個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形也沒有左底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)前序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的前序遍歷是D□G,在第三步綜合得到的遍歷順序ABDEC□F的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷ABD□GEC□F。道理與第二步相同,即相當(dāng)于用遍歷D□G替換了遍歷ABDEC□F中的D。

        第五步,寫第⑤個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有右底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)前序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的前序遍歷是FH□,在第四步綜合得到的遍歷順序ABD□GEC□F的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷ABD□GEC□FH□。道理與第二步相同,即相當(dāng)于用遍歷FH□替換了遍歷ABD□GEC□F中的F。

        第六步,①②③④⑤五個(gè)等腰三角形都已按前序遍歷規(guī)則逐一遍歷到,最終得到了ABD□GEC□FH□遍歷。此時(shí),我們把“□”去掉,最終得到了遍歷ABDGECFH,應(yīng)用傳統(tǒng)二叉樹遍歷解法進(jìn)行檢驗(yàn),ABDGECFH就是圖2所示的二叉樹的前序遍歷。

        2.中序遍歷巧解過(guò)程

        如圖3所示,按照①②③④⑤五個(gè)等腰三角形的順序,逐一按中序遍歷的定義書寫二叉樹各結(jié)點(diǎn),并結(jié)合圖1所示二叉樹遍歷的規(guī)則,從上到下、從左向右,按順序?qū)懗龆鏄浔闅v。其步驟如下:

        第一步,寫第①個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的中序遍歷是BAC。

        第二步,寫第②個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的中序遍歷是DBE。此時(shí),結(jié)合第一步所得,綜合得到一個(gè)遍歷順序DBEAC。也可這么理解,即相當(dāng)于用遍歷DBE替換了遍歷BAC中的B。

        第三步,寫第③個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有左底點(diǎn),即以C為父結(jié)點(diǎn)的二叉樹沒有左子結(jié)點(diǎn),即為空,在此,我們以“□”表示。同樣,根據(jù)中序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的中序遍歷是□CF,在第二步綜合得到的遍歷順序DBEAC的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷DBEA□CF。道理與第二步相同,即相當(dāng)于用遍歷□CF替換了遍歷DBEAC中的C。

        第四步,寫第④個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形也沒有左底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)中序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的中序遍歷是□DG,在第三步綜合得到的遍歷順序DBEA□CF的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷□DGBEA□CF。道理與第二步相同,即相當(dāng)于用遍歷□DG替換了遍歷DBEA□CF中的D。

        第五步,寫第⑤個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有右底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)中序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的中序遍歷是HF□,在第四步綜合得到的遍歷順序□DGBEA□CF的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷□DGBEA□CHF□。道理與第二步相同,即相當(dāng)于用遍歷HF□替換了遍歷□DGBEA□CF中的F。

        第六步,①②③④⑤五個(gè)等腰三角形都已按中序遍歷規(guī)則逐一遍歷到,最終得到了□DGBEA□CHF□遍歷。此時(shí),我們把“□”去掉,最終得到了遍歷DGBEACHF,應(yīng)用傳統(tǒng)二叉樹遍歷解法進(jìn)行檢驗(yàn),DGBEACHF就是圖2所示的二叉樹的中序遍歷。

        3.后序遍歷巧解過(guò)程

        如圖3所示,按照①②③④⑤五個(gè)等腰三角形的順序,逐一按后序遍歷的定義書寫二叉樹各結(jié)點(diǎn),并結(jié)合圖1所示二叉樹遍歷的規(guī)則,從上到下、從左向右,按順序?qū)懗龆鏄浔闅v。其步驟如下:

        第一步,寫第①個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的后序遍歷是BCA。

        第二步,寫第②個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這三個(gè)結(jié)點(diǎn)的后序遍歷是DEB。此時(shí),結(jié)合第一步所得,綜合得到一個(gè)遍歷順序DEBCA。也可這么理解,即相當(dāng)于用遍歷DEB替換了遍歷BCA中的B。

        第三步,寫第③個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有左底點(diǎn),即以C為父結(jié)點(diǎn)的二叉樹沒有左子結(jié)點(diǎn),即為空,在此,我們以“□”表示。同樣,根據(jù)后序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的后序遍歷是□FC,在第二步綜合得到的遍歷順序DEBCA的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷DEB□FCA。道理與第二步相同,即相當(dāng)于用遍歷□FC替換了遍歷DEBCA中的C。

        第四步,寫第④個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形也沒有左底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)后序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的后序遍歷是□GD,在第三步綜合得到的遍歷順序DEB□FCA的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷□GDEB□FCA。道理與第二步相同,即相當(dāng)于用遍歷□GD替換了遍歷DEB□FCA中的D。

        第五步,寫第⑤個(gè)等腰三角形所在三個(gè)結(jié)點(diǎn),這個(gè)三角形沒有右底點(diǎn),如第三步一樣,我們以“□”表示。同樣,根據(jù)后序遍歷規(guī)則,這三個(gè)結(jié)點(diǎn)的后序遍歷是H□F,在第四步綜合得到的遍歷順序□GDEB□FCA的基礎(chǔ)上,通過(guò)替換,可以得到一個(gè)新的遍歷□GDEB□H□FCA。道理與第二步相同,即相當(dāng)于用遍歷H□F替換了遍歷□GDEB□FCA中的F。

        第六步,①②③④⑤五個(gè)等腰三角形都已按后序遍歷規(guī)則逐一遍歷到,最終得到了□GDEB□H□FCA遍歷。此時(shí),我們把“□”去掉,最終得到了遍歷GDEBHFCA,應(yīng)用傳統(tǒng)二叉樹遍歷解法進(jìn)行檢驗(yàn),GDEBHFCA就是圖2所示的二叉樹的后序遍歷。

        三、結(jié)語(yǔ)

        在計(jì)算機(jī)專業(yè)里,數(shù)據(jù)結(jié)構(gòu)是一門規(guī)律性很強(qiáng)的學(xué)科。我們可以通過(guò)建模,使數(shù)據(jù)結(jié)構(gòu)可視化,反映出其中的規(guī)律。我們的日常生活也蘊(yùn)藏著很多規(guī)律,我們可以通過(guò)聯(lián)想遷移的方法,用生活中司空見慣的常識(shí)來(lái)解決復(fù)雜的問(wèn)題。數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)教學(xué)中,雖然看起來(lái)非常復(fù)雜,但通過(guò)數(shù)據(jù)挖掘、數(shù)學(xué)建模,數(shù)據(jù)結(jié)構(gòu)能在很多日常的生活上得以反映,并能讓數(shù)據(jù)結(jié)構(gòu)教學(xué)化繁為簡(jiǎn),提高教學(xué)效率。本文從幾何學(xué)中最通俗的對(duì)稱性和等腰三角形進(jìn)行挖掘,查找出了它們與二叉樹這一非線形數(shù)據(jù)結(jié)構(gòu)的潛在聯(lián)系,把復(fù)雜的問(wèn)題簡(jiǎn)單化。這樣在教學(xué)過(guò)程中,學(xué)生容易接受,教師講授也顯得輕松。

        [ 參 考 文 獻(xiàn) ]

        [1] 喬良才,趙奇.二叉樹教學(xué)方法研究[J].攀枝花學(xué)院學(xué)報(bào),2012(2):124-126.

        [2] 陳莉莉,劉琴琴.中序遍歷二叉樹的教學(xué)方法研究[J].電腦知識(shí)與技術(shù),2011(9):2100-2102.

        [責(zé)任編輯:鐘偉芳]

        猜你喜歡
        二叉樹數(shù)據(jù)結(jié)構(gòu)教學(xué)設(shè)計(jì)
        CSP真題——二叉樹
        二叉樹創(chuàng)建方法
        一種由層次遍歷和其它遍歷構(gòu)造二叉樹的新算法
        高中數(shù)學(xué)一元二次含參不等式的解法探討
        考試周刊(2016年79期)2016-10-13 22:17:05
        “仿真物理實(shí)驗(yàn)室” 在微課制作中的應(yīng)用
        考試周刊(2016年77期)2016-10-09 11:49:00
        翻轉(zhuǎn)課堂在高職公共英語(yǔ)教學(xué)中的應(yīng)用現(xiàn)狀分析及改善建議
        考試周刊(2016年76期)2016-10-09 09:18:59
        提高課堂教學(xué)有效性的研究
        成才之路(2016年26期)2016-10-08 11:13:47
        “翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
        高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
        TRIZ理論在“數(shù)據(jù)結(jié)構(gòu)”多媒體教學(xué)中的應(yīng)用
        久久精品免费一区二区喷潮| 亚洲国产精品日韩专区av| 久久精品国产福利亚洲av| 久久一本日韩精品中文字幕屁孩| 三年片免费观看大全有| 国产精品原创巨作AV女教师| 男女上床视频免费网站| 亚洲av高清一区二区在线观看| 亚洲av乱码一区二区三区观影| 操国产丝袜露脸在线播放| 日韩精品视频高清在线| 每日更新在线观看av| 水蜜桃无码视频在线观看| 日韩欧美第一区二区三区| 久久亚洲一区二区三区四区五| 华人在线视频精品在线| 人妻无码一区二区不卡无码av| 久久久窝窝午夜精品| 成人精品国产亚洲欧洲| 快射视频网站在线观看| 久久亚洲av成人无码电影a片 | 天天做天天爱天天综合网| 国产精品玖玖玖在线资源| 成人av资源在线观看| 国产av天堂亚洲国产av麻豆| 亚洲精品在线观看一区二区| 91九色人妻精品一区二区三区| 无遮挡h肉动漫在线观看| 中文字幕无码人妻丝袜| 风流少妇一区二区三区91| 在线观看国产视频你懂得| 亚洲精品乱码8久久久久久日本 | 亚洲中文av一区二区三区| 中文字幕日本五十路熟女| 蜜臀av在线观看| 在线观看av永久免费| 亚洲成AV人国产毛片| 91精品国产福利在线观看麻豆| 人人妻人人澡人人爽人人精品97| 先锋影音av资源我色资源| 手机av男人天堂免费网址|