• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      數(shù)據(jù)結(jié)構(gòu)綱要貫穿式教學(xué)探索

      2022-10-17 06:42:42詹澤梅
      電腦知識(shí)與技術(shù) 2022年25期
      關(guān)鍵詞:二叉樹數(shù)據(jù)類型鏈表

      詹澤梅

      (長(zhǎng)江大學(xué)計(jì)算機(jī)科學(xué)學(xué)院,湖北 荊州 434023)

      1 引言

      數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)專業(yè)的一門重要基礎(chǔ)課程,它以程序設(shè)計(jì)語言為基礎(chǔ),培養(yǎng)學(xué)生進(jìn)行復(fù)雜程序設(shè)計(jì)的能力。該課程也是后續(xù)一些重要專業(yè)課的基礎(chǔ)。由于學(xué)生在此課程之前通常只學(xué)習(xí)了一門或兩門編程課程,程序設(shè)計(jì)能力還比較薄弱,所以學(xué)生普遍認(rèn)為數(shù)據(jù)結(jié)構(gòu)課程內(nèi)容繁多、復(fù)雜、抽象。為了提高教學(xué)質(zhì)量,教育者們研究了”混合式教學(xué)”[1-2]、分層教學(xué)法[3]、案例驅(qū)動(dòng)[4]、融合式教學(xué)[5]等多種教學(xué)模式和方法,取得了一定的效果。針對(duì)數(shù)據(jù)結(jié)構(gòu)課程內(nèi)容繁多、復(fù)雜的情況,為各部分內(nèi)容設(shè)置統(tǒng)一的內(nèi)容綱要,將綱要貫穿整個(gè)教學(xué)過程,能幫助學(xué)生快速理清學(xué)習(xí)思路,降低內(nèi)容復(fù)雜程度,從而讓學(xué)生掌握課程內(nèi)容,達(dá)到較好的教學(xué)效果。

      2 設(shè)置綱要

      綱要貫穿式教學(xué)首先要有能概括各章或絕大部分教學(xué)內(nèi)容的綱要,而綱要的確定需要通過分析各章內(nèi)容得到。嚴(yán)蔚敏、吳偉民編著的《數(shù)據(jù)結(jié)構(gòu)(C語言版)》[6]被許多高校計(jì)算機(jī)專業(yè)選定為數(shù)據(jù)結(jié)構(gòu)課程的教材,至今累計(jì)發(fā)行已超400萬冊(cè)。筆者將以此書為教材,分析貫穿式綱要的設(shè)置。

      2.1 教材內(nèi)容歸納

      縱觀各本數(shù)據(jù)結(jié)構(gòu)教材,其主要內(nèi)容是介紹各種不同結(jié)構(gòu)的數(shù)據(jù)類型,包括線性表、棧、隊(duì)列、字符串、樹和二叉樹、圖等。下面將分析教材中這些數(shù)據(jù)類型的主要內(nèi)容。表1-表6是對(duì)教材中各部分內(nèi)容的歸納。

      表1 線性表

      表2 棧

      表3 隊(duì)列

      表6 圖

      表5 樹和二叉樹

      2.2 一級(jí)綱要

      從表1-表6可看出在介紹每一種數(shù)據(jù)類型時(shí),首先需要先分析它的特點(diǎn),介紹其抽象類型定義,讓學(xué)生了解這種數(shù)據(jù)類型的特征、元素之間的關(guān)系、常用操作。有的還會(huì)介紹本數(shù)據(jù)類型的相關(guān)概念,例如字符串、樹和二叉樹、圖都在本章開頭介紹了相關(guān)概念。

      接著就要分析數(shù)據(jù)類型在計(jì)算機(jī)中的存儲(chǔ)表示。因?yàn)閿?shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)中的存儲(chǔ)結(jié)構(gòu)有兩種:順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),所以需要從順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)兩方面分析數(shù)據(jù)類型在計(jì)算機(jī)中的存儲(chǔ)表示。順序表、順序棧、循環(huán)隊(duì)列、串的定長(zhǎng)順序存儲(chǔ)、串的堆分配存儲(chǔ)、二叉樹的順序表示這些都屬于順序存儲(chǔ)結(jié)構(gòu);線性鏈表、循環(huán)鏈表、雙向鏈表、鏈棧、鏈隊(duì)列、串的塊鏈存儲(chǔ)、二叉鏈表這些都屬于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。樹和圖的結(jié)構(gòu)比較復(fù)雜,任意兩個(gè)元素之間都可能存在關(guān)系,所以很難用順序存儲(chǔ)結(jié)構(gòu),但可以借助數(shù)組表示元素之間的關(guān)系。例如樹的雙親表示法、圖的數(shù)組表示法。樹和圖的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)有:樹的子鏈表、樹的二叉鏈表、圖的鄰接表、圖的十字鏈表、圖的鄰接多重表。

      最后,為了加強(qiáng)學(xué)生對(duì)數(shù)據(jù)類型的理解和對(duì)前面知識(shí)的應(yīng)用,教材上對(duì)每種數(shù)據(jù)類型都舉例講解了一個(gè)或多個(gè)實(shí)例。這些實(shí)例都是需要使用相應(yīng)數(shù)據(jù)類型的典型例子。

      根據(jù)上面分析,可提煉出貫穿教材各種數(shù)據(jù)類型的一級(jí)講解綱要,如圖1。

      圖1 一級(jí)綱要

      2.3 二級(jí)綱要

      在一級(jí)綱要中有順序存儲(chǔ)表示和實(shí)現(xiàn)、鏈?zhǔn)酱鎯?chǔ)表示和實(shí)現(xiàn)。從表1-表6中可看出教材2.2、2.3、3.1.2、3.4.2、3.4.3、4.2、6.2、6.3、6.4、7.2、7.3小節(jié)的內(nèi)容均屬于順序或鏈?zhǔn)酱鎯?chǔ)表示和實(shí)現(xiàn),這部分內(nèi)容也是課程的重點(diǎn)。分析這些內(nèi)容可發(fā)現(xiàn):對(duì)每一種數(shù)據(jù)類型,不管是介紹它的順序存儲(chǔ)表示,還是介紹它的鏈?zhǔn)酱鎯?chǔ)表示,都主要從兩方面講解,一是類型定義,二是基本操作的算法實(shí)現(xiàn)。合理的類型定義應(yīng)是基于其存儲(chǔ)特點(diǎn)給出的,因此,可先分析此數(shù)據(jù)類型的存儲(chǔ)特點(diǎn),然后再用C語言描述其類型定義。當(dāng)數(shù)據(jù)類型在計(jì)算機(jī)中采用不同的類型定義表示時(shí),常用基本操作的算法也互不相同。對(duì)于每一個(gè)操作,可先用自然語言分析具體怎么做,再用類C語言描述出具體步驟,從而得到操作的算法函數(shù),最后分析算法時(shí)間復(fù)雜度。

      根據(jù)上面的分析,可提煉出數(shù)據(jù)類型的每種存儲(chǔ)表示和實(shí)現(xiàn)的二級(jí)講解綱要,如圖2。

      圖2 二級(jí)綱要

      3 實(shí)現(xiàn)方式

      3.1 理論教學(xué)

      設(shè)置好貫穿整個(gè)教學(xué)過程的綱要后,就要在授課過程中使用綱要教學(xué)。數(shù)據(jù)結(jié)構(gòu)的教學(xué)一般分為理論教學(xué)和上機(jī)實(shí)踐。理論教學(xué)是實(shí)施綱要貫穿式教學(xué)的主要部分。

      數(shù)據(jù)結(jié)構(gòu)課程第一章是緒論,從第二章開始就介紹各種不同結(jié)構(gòu)的數(shù)據(jù)類型,這時(shí)便可以采用綱要貫穿式教學(xué)。在講解每章內(nèi)容之前先擺出一級(jí)綱要,讓學(xué)生對(duì)本章內(nèi)容有一個(gè)大概了解。接著,便按綱要講解各部分內(nèi)容。在講解數(shù)據(jù)類型的兩種存儲(chǔ)表示時(shí),也是先給出二級(jí)綱要,并對(duì)照綱要列出本數(shù)據(jù)類型的常用操作,然后再逐個(gè)操作講解。對(duì)于兩種存儲(chǔ)表示,既可以兩者都詳細(xì)講解,也可根據(jù)實(shí)際應(yīng)用情況詳細(xì)講解一種。例如線性表兩種存儲(chǔ)表示都比較常用,所以兩者都詳細(xì)講解。二叉樹的順序存儲(chǔ)表示比較適合于存儲(chǔ)完全二叉樹,對(duì)于非完全二叉樹采用順序存儲(chǔ)表示比較浪費(fèi)存儲(chǔ)空間,所以只用詳細(xì)講解二叉樹的鏈?zhǔn)酱鎯?chǔ)表示。

      每章內(nèi)容結(jié)束時(shí),需要對(duì)照綱要進(jìn)行總結(jié),幫助學(xué)生梳理本章內(nèi)容,讓學(xué)生對(duì)本章內(nèi)容有更清晰的認(rèn)識(shí)。

      講第一種數(shù)據(jù)類型時(shí),學(xué)生可能對(duì)綱要認(rèn)識(shí)比較模糊,但隨著在第二種、第三種等數(shù)據(jù)類型的講解中使用同樣的綱要,學(xué)生便會(huì)逐漸熟悉綱要,進(jìn)而容易掌握每種數(shù)據(jù)類型的整體內(nèi)容。

      3.2 上機(jī)實(shí)踐

      數(shù)據(jù)結(jié)構(gòu)是一門理論性和實(shí)踐性都很強(qiáng)的課程,上機(jī)實(shí)踐是不可或缺的教學(xué)環(huán)節(jié),也是理論知識(shí)的鞏固和應(yīng)用。二級(jí)綱要對(duì)應(yīng)的是數(shù)據(jù)類型在計(jì)算機(jī)中的存儲(chǔ)表示和實(shí)現(xiàn),具體包含類型定義和常用操作的算法,與程序相關(guān),適合將其作為上機(jī)內(nèi)容。將二級(jí)綱要中的內(nèi)容貫穿于上機(jī)實(shí)踐中,這樣能加深學(xué)生對(duì)理論知識(shí)的深入理解。

      根據(jù)二級(jí)綱要將單鏈表的上機(jī)任務(wù)設(shè)置為:定義單鏈表類型,實(shí)現(xiàn)單鏈表的創(chuàng)建操作、向單鏈表中插入一個(gè)元素操作、從單鏈表中刪除一個(gè)元素操作、查找第i個(gè)元素值的操作以及輸出單鏈表所有元素的操作。單鏈表上機(jī)任務(wù)如圖3所示。圖4至圖8分別展示了另外幾種數(shù)據(jù)類型根據(jù)二級(jí)綱要設(shè)置的上機(jī)任務(wù)。

      圖3 單鏈表上機(jī)任務(wù)

      圖8 圖上機(jī)任務(wù)

      上機(jī)任務(wù)的內(nèi)容還可根據(jù)學(xué)生層次適當(dāng)調(diào)整內(nèi)容。如果某個(gè)上機(jī)任務(wù)相對(duì)于學(xué)生來說比較簡(jiǎn)單,可將應(yīng)用實(shí)例加入其中;如果某個(gè)上機(jī)任務(wù)比較復(fù)雜,可選取部分內(nèi)容。例如圖4所示的棧上機(jī)任務(wù)比較簡(jiǎn)單,可將數(shù)值轉(zhuǎn)換或括號(hào)匹配實(shí)例加入其中。圖7所示的圖上機(jī)任務(wù)比較復(fù)雜,可從深度優(yōu)先遍歷、廣度優(yōu)先遍歷中選取一種遍歷操作實(shí)現(xiàn)。

      圖4 棧上機(jī)任務(wù)

      圖7 二叉樹上機(jī)任務(wù)

      4 總結(jié)

      圖5 隊(duì)列上機(jī)任務(wù)

      圖6 字符串上機(jī)任務(wù)

      綱要貫穿式教學(xué)方法應(yīng)用于數(shù)據(jù)結(jié)構(gòu)的理論教學(xué)和上機(jī)實(shí)踐中。在理論教學(xué)中,通過統(tǒng)一的綱要貫穿各部分內(nèi)容,能幫助學(xué)生理清繁雜的教學(xué)內(nèi)容,讓學(xué)生快速掌握學(xué)習(xí)內(nèi)容。在上機(jī)實(shí)踐中,將綱要內(nèi)容轉(zhuǎn)換成程序,將理論應(yīng)用于實(shí)踐,能進(jìn)一步加深學(xué)生對(duì)理論知識(shí)的理解。在教學(xué)實(shí)踐中,該方法可與其他教學(xué)方法相結(jié)合,運(yùn)用多種教學(xué)方式,從而達(dá)到更好的教學(xué)效果。

      猜你喜歡
      二叉樹數(shù)據(jù)類型鏈表
      CSP真題——二叉樹
      詳談Java中的基本數(shù)據(jù)類型與引用數(shù)據(jù)類型
      二叉樹創(chuàng)建方法
      如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類型
      基于二進(jìn)制鏈表的粗糙集屬性約簡(jiǎn)
      跟麥咭學(xué)編程
      基于鏈表多分支路徑樹的云存儲(chǔ)數(shù)據(jù)完整性驗(yàn)證機(jī)制
      一種由層次遍歷和其它遍歷構(gòu)造二叉樹的新算法
      鏈表方式集中器抄表的設(shè)計(jì)
      論復(fù)雜二叉樹的初始化算法
      河南科技(2014年24期)2014-02-27 14:20:01
      菏泽市| 隆化县| 东乡族自治县| 巴南区| 泽普县| 确山县| 梨树县| 尖扎县| 双城市| 义乌市| 晋州市| 阳山县| 临漳县| 砀山县| 台山市| 乐至县| 新和县| 台安县| 汉寿县| 邵阳县| 揭阳市| 涟源市| 峨眉山市| 鲜城| 镇远县| 阳信县| 永安市| 古交市| 西藏| 洪雅县| 勃利县| 彰化县| 册亨县| 慈溪市| 铜川市| 娄底市| 中方县| 黄浦区| 会同县| 靖边县| 建湖县|