主持人
李維明,教育部普通高中信息技術(shù)課標(biāo)修訂組核心成員,正高級教師(教授)
主持人語:自2019年9月采用新課標(biāo)新教材開展教學(xué)以來,北京、天津、山東、海南、遼寧等5個省(市)大多完成了必修模塊的教學(xué),部分省(市)還進行了學(xué)業(yè)水平合格考試,取得了良好的成效。今年,教育部又組織專家對課標(biāo)進行了修訂,頒布了最新版的《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版2020修訂)》,更加明晰了學(xué)科核心素養(yǎng)的內(nèi)涵和內(nèi)容模塊的結(jié)構(gòu),增強了教學(xué)應(yīng)用的方向感。當(dāng)下,新課標(biāo)新教材的教學(xué)實踐已經(jīng)進入到選擇性必修模塊教學(xué)的新階段,怎么選擇、怎么教學(xué)是必須面臨的重要問題。為配合即將到來的選擇性必修課程的教學(xué),本期繼續(xù)進行“普通高中信息技術(shù)新課程實施”之選擇性必修模塊的教學(xué)等系列專題的研討,以饗讀者。同時,也希望廣大信息技術(shù)教師、教研人員積極參與,獻計獻策,共同促進學(xué)科新課標(biāo)新課程的順利實施、健康發(fā)展。歡迎大家不吝賜稿(358211798@qq.com)。
普通高中信息技術(shù)新課標(biāo)實施之教學(xué)專題四
數(shù)據(jù)與數(shù)據(jù)結(jié)構(gòu)的教學(xué)——測評
在明確了數(shù)據(jù)的內(nèi)涵與外延、理解了數(shù)據(jù)的價值與作用之后,對數(shù)據(jù)間存在的某些特定的關(guān)系需要進行必要的研究,也就是對數(shù)據(jù)結(jié)構(gòu)進行研究,以提高數(shù)據(jù)存儲效率及運算效率。
理解數(shù)據(jù)結(jié)構(gòu)的概念
數(shù)據(jù)結(jié)構(gòu)是計算機存儲、組織數(shù)據(jù)的方式,是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。它主要涉及數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)及運算三個方面。
數(shù)據(jù)的邏輯結(jié)構(gòu);數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間的邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu),其中的邏輯關(guān)系是指數(shù)據(jù)元素之間的前后間關(guān)系,而與它們在計算機中的存儲位置無關(guān)。邏輯結(jié)構(gòu)包括集合、線性結(jié)構(gòu)、樹形結(jié)構(gòu)、圖形結(jié)構(gòu)等。
數(shù)據(jù)的存儲結(jié)構(gòu):數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲空間中的存放形式稱為數(shù)據(jù)的物理結(jié)構(gòu)(也稱為存儲結(jié)構(gòu))。一般來說,一種數(shù)據(jù)結(jié)構(gòu)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲結(jié)構(gòu),常用的存儲結(jié)構(gòu)有順序存儲、鏈?zhǔn)酱鎯?、索引存儲等?/p>
運算:算法研究的目的是更有效地處理數(shù)據(jù),提高數(shù)據(jù)運算效率。數(shù)據(jù)的運算是定義在數(shù)據(jù)的邏輯結(jié)構(gòu)上的,但運算的具體實現(xiàn)要在存儲結(jié)構(gòu)上進行。運算一般有檢索、插入、刪除、更新、排序等幾種常用運算。
數(shù)據(jù)的結(jié)構(gòu)是多樣的,也有不少是復(fù)雜的,選擇性必修課程不可能全面開花,而只能了解這些基本的概念及簡單的結(jié)構(gòu),更多的內(nèi)容可以在高校學(xué)習(xí)中去了解。
認(rèn)識數(shù)據(jù)結(jié)構(gòu)的作用
數(shù)據(jù)結(jié)構(gòu)在解決問題的過程中有著重要的作用,要設(shè)計出一個結(jié)構(gòu)好效率高的程序,必須研究數(shù)據(jù)的特性及數(shù)據(jù)間的相互關(guān)系及其對應(yīng)的存儲表示,并利用這些特性和關(guān)系設(shè)計出相應(yīng)的算法和程序,精心選擇的數(shù)據(jù)結(jié)構(gòu)則可以帶來最優(yōu)效率的算法。
在實際應(yīng)用中,數(shù)據(jù)結(jié)構(gòu)不同,對數(shù)據(jù)進行操作的方法就會不同,相應(yīng)的運算方法也就不同。例如,要在順序存儲結(jié)構(gòu)的一組數(shù)據(jù)中插入一個新數(shù)據(jù),操作時就需要將此插入點后的所有數(shù)據(jù)都往后移動一個位置,以空出一個位置來存放新數(shù)據(jù),其操作效率低;而如果采用鏈?zhǔn)酱鎯Φ慕Y(jié)構(gòu),則只需要把插入點之前的地址指向新數(shù)據(jù),把新數(shù)據(jù)的地址指向原插入點之后的數(shù)據(jù)即可,其操作極為簡便,效率明顯提高。形象地說,順序存儲結(jié)構(gòu)就像銀行里的排隊辦事,人們一個挨著一個地在窗口排隊,“夾塞”就會影響整個隊列;而鏈?zhǔn)酱鎯Y(jié)構(gòu)就像銀行里的叫號辦事,人們?nèi)×颂柹⒆诓煌奈恢?,工作人員依次叫號,被叫到號才去窗口辦理,這樣既保證了辦事的秩序,又免去了站立排隊的辛苦,因而被廣泛采用。
在信息系統(tǒng)開發(fā)設(shè)計過程中,數(shù)據(jù)結(jié)構(gòu)的選擇更是一個基本的設(shè)計考慮因素。特別是大型的復(fù)雜的應(yīng)用系統(tǒng),其系統(tǒng)實現(xiàn)的困難程度和系統(tǒng)構(gòu)造的質(zhì)量都嚴(yán)重地依賴于是否選擇了最優(yōu)的數(shù)據(jù)結(jié)構(gòu)。由此可見,無論是簡單生活事務(wù)的應(yīng)用,還是復(fù)雜信息系統(tǒng)的設(shè)計,數(shù)據(jù)結(jié)構(gòu)的選擇都是必須考慮的重要因素,其作用不可小覷。
教學(xué)建議
數(shù)據(jù)結(jié)構(gòu)的教學(xué)應(yīng)當(dāng)注意兩點,即適度、得法。適度就是要求在教學(xué)中對概念的要求深淺適度,對操作的要求要難易適度;得法就是根據(jù)不同的教學(xué)需求,采用適合的教學(xué)方法。
《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版2020修訂)》(以下簡稱《標(biāo)準(zhǔn)》)中涉及數(shù)據(jù)結(jié)構(gòu)相關(guān)概念的要求既有“理解數(shù)據(jù)結(jié)構(gòu)的概念”這樣的總要求,又有“理解數(shù)組、鏈表等基本數(shù)據(jù)結(jié)構(gòu)的概念”“理解包括字符串、隊列、棧在內(nèi)的線性表的概念”“了解二叉樹的概念”等涉及某類數(shù)據(jù)結(jié)構(gòu)的具體要求。在教學(xué)時,要從基本的、典型的數(shù)據(jù)結(jié)構(gòu)入手,通過剖析數(shù)據(jù)結(jié)構(gòu)的實例,由簡到繁,從個別到一般,從具體的應(yīng)用到抽象的歸納,逐步理解數(shù)據(jù)結(jié)構(gòu)的基本概念,認(rèn)識數(shù)據(jù)結(jié)構(gòu)的重要作用。
由于數(shù)據(jù)結(jié)構(gòu)涉及面廣、形式多樣,教學(xué)時對其操作應(yīng)用的要求不能過高,建議嚴(yán)格按照《標(biāo)準(zhǔn)》要求的程度展開教學(xué),以免徒增難度。例如,對于“數(shù)組”“鏈表”這些基本的數(shù)據(jù)結(jié)構(gòu),《標(biāo)準(zhǔn)》要求“能編程實現(xiàn)其相關(guān)操作”,而對于“二叉樹”這樣的抽象數(shù)據(jù)結(jié)構(gòu),《標(biāo)準(zhǔn)》則只要求“了解”基本操作方法。所以,教學(xué)時一定要注意區(qū)別對待、分別要求,以便明確地表述數(shù)據(jù)結(jié)構(gòu)與算法間的關(guān)系,更好地完成教學(xué)任務(wù),達成教學(xué)目標(biāo)。
教學(xué)的方法多種多樣,如何才能“得法”,其實也不難:為了便于教學(xué),《標(biāo)準(zhǔn)》在每個模塊“內(nèi)容要求”之后,都給出了明確的“教學(xué)提示”,本模塊就給出了“算法與數(shù)據(jù)結(jié)構(gòu)是問題求解中相輔相成、不可分割的兩個方面。在本模塊教學(xué)中,可以通過設(shè)計范例,引導(dǎo)學(xué)生理解數(shù)據(jù)結(jié)構(gòu)、抽象數(shù)據(jù)類型等基本概念”這樣的提示,依據(jù)這些提示開展教學(xué),就可“得法”。
《標(biāo)準(zhǔn)》中提到的“設(shè)計范例”,其字面意思非常明確,就是指能在教學(xué)中起到示范作用的有關(guān)數(shù)據(jù)結(jié)構(gòu)操作的實例,這樣的實例在教科書中比比皆是,教學(xué)時一定要充分利用。其利用的關(guān)鍵不在于范例本身求解的結(jié)果,而在于引導(dǎo)學(xué)生去理解數(shù)據(jù)結(jié)構(gòu)的概念。也就是說,教學(xué)的過程,也就是引導(dǎo)的過程是非常關(guān)鍵的,一定要精心設(shè)計,認(rèn)真落實。
同時,《標(biāo)準(zhǔn)》還提示:“在學(xué)習(xí)數(shù)組、鏈表以及線性表內(nèi)容時,可以引導(dǎo)學(xué)生參與基于真實問題的項目學(xué)習(xí),經(jīng)歷建立數(shù)據(jù)模型、抽象數(shù)據(jù)、選擇數(shù)據(jù)結(jié)構(gòu)、算法實現(xiàn)、上機調(diào)試、問題解決的全過程?!边@里提到了“基于真實問題的項目學(xué)習(xí)”,什么是“真實問題”?各版本的教材都有自己的表達,但歸結(jié)起來無非就是兩類:一類是學(xué)校學(xué)生成績管理;另一類是商場銷售數(shù)據(jù)管理。所以,如何將項目活動設(shè)計得生動而又利于學(xué)習(xí),這是教學(xué)首先需要考慮的問題。更為重要的是,要讓學(xué)生經(jīng)歷“建立數(shù)據(jù)模型”“抽象數(shù)據(jù)”“選擇數(shù)據(jù)結(jié)構(gòu)”“算法實現(xiàn)”“上機調(diào)試”“問題解決”的全過程,就必須把項目活動設(shè)計得可以驅(qū)動各個環(huán)節(jié)的學(xué)習(xí),讓學(xué)生在“經(jīng)歷”之中探索用計算機解決問題的途徑,掌握用計算機解決問題的方法,提高用計算機解決問題的關(guān)鍵能力,逐步形成用計算機解決問題的思維方式,提升學(xué)科核心素養(yǎng)。這樣才能使項目學(xué)習(xí)真正具有活動的價值、教學(xué)的意義,這才可以稱之為“得法”。
正如《標(biāo)準(zhǔn)》指出的那樣,“數(shù)據(jù)結(jié)構(gòu)是信息技術(shù)學(xué)科的核心內(nèi)容之一,對培養(yǎng)學(xué)生的信息意識與計算思維、深入理解并掌握信息技術(shù)學(xué)科知識與實踐方法、形成學(xué)科核心素養(yǎng),具有非常重要的作用”。數(shù)據(jù)結(jié)構(gòu)的教學(xué)意義如此重大,作用非同小可,在實施過程中各位教師一定要認(rèn)真對待,絕不可等閑視之。