摘要:《義務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)》(以下簡(jiǎn)稱“新課標(biāo)”)依據(jù)學(xué)科概念的邏輯關(guān)系梳理出數(shù)據(jù)、算法、網(wǎng)絡(luò)、信息處理、信息安全、人工智能六條邏輯主線,并按照學(xué)生的認(rèn)知規(guī)律和信息科技的學(xué)科特點(diǎn),統(tǒng)籌安排各學(xué)段的學(xué)習(xí)內(nèi)容。算法是計(jì)算思維的核心要素之一,本文圍繞“算法”這條邏輯主線進(jìn)行了分析和研究,旨在提高學(xué)生在問(wèn)題解決過(guò)程中涉及的抽象、分解、建模、算法設(shè)計(jì)等思維活動(dòng)。
關(guān)鍵詞:邏輯主線;算法;新教學(xué);新評(píng)價(jià)
中圖分類號(hào):G434"文獻(xiàn)標(biāo)識(shí)碼:A"論文編號(hào):1674-2117(2025)02-0030-04
信息科技課程從新課標(biāo)、新教材、新設(shè)計(jì)、新教學(xué)到新評(píng)價(jià)的一體化實(shí)施是從新課標(biāo)轉(zhuǎn)化到新評(píng)價(jià)的必然路徑,貫穿其中的是數(shù)據(jù)、算法、網(wǎng)絡(luò)、信息處理、信息安全、人工智能六條邏輯主線。六條邏輯主線是由信息科技知識(shí)體系的內(nèi)在邏輯決定的,其內(nèi)容層層遞進(jìn),難度漸次加深,要求逐步提高。這種進(jìn)階的設(shè)計(jì),特別是“算法”邏輯主線的進(jìn)階設(shè)計(jì)既考慮了對(duì)信息科技的知識(shí)、技能體系本身的理解、認(rèn)識(shí)及操作的難度,也考慮了義務(wù)教育各學(xué)段學(xué)生的心智發(fā)展程度。
“算法”邏輯主線的認(rèn)識(shí)與理解
“算法”邏輯主線貫穿整個(gè)課程,為其他邏輯主線提供了方法和思維的基礎(chǔ)支撐。從縱向觀察,“算法”邏輯主線在第三學(xué)段,符合學(xué)生的認(rèn)知發(fā)展規(guī)律?!八惴ā边@條邏輯主線以問(wèn)題及解決為線索,在小學(xué)低段注重生活體驗(yàn),學(xué)生在第一、第二學(xué)段有了一定的生活體驗(yàn)后,在第三學(xué)段通過(guò)對(duì)算法的學(xué)習(xí),用自然語(yǔ)言、流程圖等方式描述算法,逐步形成解決問(wèn)題的策略或方法。在初中階段注重深化原理認(rèn)識(shí),以達(dá)到運(yùn)用算法解決問(wèn)題的目的,探索利用算法思維解決問(wèn)題的過(guò)程和方法。從橫向觀察,“算法”邏輯主線,既沒(méi)有算法定義生澀的描述,也沒(méi)有算法代碼冗長(zhǎng)的表達(dá),而是抓住使用算法解決問(wèn)題的本質(zhì),從問(wèn)題的分解入手,以學(xué)生熟知的學(xué)習(xí)生活為實(shí)例,用最平常的語(yǔ)言和框圖去描述、分析問(wèn)題,最終形成策略或方法。這六條邏輯主線并不是完全平行的,各條邏輯主線的內(nèi)容之間相互交叉、相互聯(lián)系,共同形成了信息科技課程結(jié)構(gòu)邏輯關(guān)聯(lián)及邏輯主線貫穿的內(nèi)容體系。“算法”這條邏輯主線是信息科技課程中最為基礎(chǔ)的邏輯主線之一,它和“數(shù)據(jù)”邏輯主線一起構(gòu)成了信息科技課程的基礎(chǔ)支撐(如下頁(yè)圖1)。
“算法”邏輯主線的教學(xué)價(jià)值
算法是最能體現(xiàn)用計(jì)算機(jī)解決問(wèn)題的思想方法,“算法”包括問(wèn)題的步驟分解,算法的描述、執(zhí)行與效率,解決問(wèn)題的策略或方法。算法作為邏輯主線之一,貫穿整個(gè)義務(wù)教育階段,也是信息科技課程的核心內(nèi)容之一。在義務(wù)教育信息科技課程體系中,在“身邊的算法”這一模塊中,學(xué)生經(jīng)歷初識(shí)算法、了解算法、理解算法、掌握算法、應(yīng)用算法的過(guò)程,從而形成算法學(xué)習(xí)所特有的思維模式。
新課標(biāo)明確提出,算法是計(jì)算思維的核心要素之一。通過(guò)學(xué)習(xí)算法,學(xué)生能夠用明確的、可執(zhí)行的操作步驟描述問(wèn)題的求解方案,能夠用三種基本控制結(jié)構(gòu)設(shè)計(jì)程序解決問(wèn)題,這些都是計(jì)算思維的重要表現(xiàn)。算法不僅讓學(xué)生學(xué)會(huì)如何編寫(xiě)代碼,更培養(yǎng)了學(xué)生在解決具體問(wèn)題時(shí)的思維能力,如思考問(wèn)題的邏輯、解決問(wèn)題的方法、問(wèn)題的創(chuàng)新、問(wèn)題的遷移應(yīng)用等。明確的、可執(zhí)行的操作步驟要求學(xué)生學(xué)會(huì)定義問(wèn)題、規(guī)劃步驟,并預(yù)測(cè)相應(yīng)的結(jié)果。學(xué)生在面對(duì)復(fù)雜問(wèn)題時(shí),可以將問(wèn)題分解為更小的問(wèn)題,并設(shè)計(jì)有效的解決策略。同時(shí)一個(gè)問(wèn)題的算法可能不是唯一的,通過(guò)探索、嘗試和優(yōu)化算法,能激發(fā)學(xué)生的數(shù)字化學(xué)習(xí)與創(chuàng)新力。
算法的教學(xué)價(jià)值不僅體現(xiàn)在培養(yǎng)學(xué)生的計(jì)算思維上,更在于它對(duì)學(xué)生綜合素質(zhì)和能力的全面提升。在教學(xué)中重視算法的教學(xué),對(duì)培養(yǎng)學(xué)生的核心素養(yǎng),以及學(xué)生的綜合素養(yǎng)都有著重要的意義。
“算法”邏輯主線在教學(xué)中的實(shí)施
雖然算法教學(xué)有著重要意義,但是因?yàn)樗惴ㄏ鄬?duì)枯燥,學(xué)生興趣不高,有畏難情緒;算法理論與實(shí)踐脫離,相對(duì)抽象,學(xué)生很難理解其精髓。所以,如何開(kāi)展算法教學(xué)顯得至關(guān)重要。
1.巧用動(dòng)態(tài)的情境形象算法問(wèn)題
動(dòng)態(tài)情境是指情境是可以不斷更新迭代的。算法所涉及的核心思想、形式化或半形式化的表示、算法推導(dǎo)的數(shù)學(xué)及背景知識(shí)應(yīng)在學(xué)生的知識(shí)范圍內(nèi),根據(jù)這個(gè)范圍用動(dòng)態(tài)的思維創(chuàng)設(shè)情境。例如,(五年級(jí)上教材最短路徑問(wèn)題描述)隨著人工智能技術(shù)的發(fā)展,無(wú)人駕駛小車——送貨機(jī)器人的應(yīng)用越來(lái)越廣泛,給人們的生活帶來(lái)了不少便利。你對(duì)它有哪些了解呢?你知道它是怎樣規(guī)劃路徑的嗎?(最短路徑算法思想,如下頁(yè)圖2所示)把圖2中的每一個(gè)經(jīng)過(guò)點(diǎn)抽象成地圖上的一個(gè)個(gè)節(jié)點(diǎn),把節(jié)點(diǎn)之間彎曲的路抽象成線段,把節(jié)點(diǎn)之間的路程抽象成具體數(shù)據(jù),進(jìn)一步畫(huà)出抽象簡(jiǎn)化圖(如下頁(yè)圖3)。
規(guī)劃送貨機(jī)器人路線的模式識(shí)別為:先找到幾種可能的路徑,再計(jì)算每種路徑的總長(zhǎng),最后通過(guò)比較找出最短路徑。
計(jì)算模型為:總路程=各段分路程之和。
利用這個(gè)模型,不管路線的長(zhǎng)短如何變化,我們只要輸入各段分路程,算法利用以上計(jì)算模型就會(huì)得出送貨機(jī)器人行走的總路程。
最短路徑算法情境的動(dòng)態(tài)迭代。義教教材動(dòng)態(tài)情境1:找一條義烏到北京的最短路徑,算法如何分析?義教教材動(dòng)態(tài)情境2:假期里,小華計(jì)劃從義烏出發(fā)去北京旅游,有多條高速路徑可供選擇,你知道走哪條高速路徑所花費(fèi)的路橋費(fèi)用最少嗎?費(fèi)用是多少呢?義教教材動(dòng)態(tài)情境3:早期的交通線路圖上的每條路線都會(huì)完整顯示信息,包括車站之間的距離和實(shí)際的路線形狀等。改進(jìn)后的交通線路圖變得十分簡(jiǎn)化,你知道交通線路圖為什么要改成這樣嗎?義教教材動(dòng)態(tài)情境4:著名的“七橋問(wèn)題”——18世紀(jì)初,哥尼斯堡有一條河穿城而過(guò),河中有兩個(gè)小島,通過(guò)七座橋連接河的兩岸。有人提出一個(gè)問(wèn)題:一個(gè)步行者怎樣才能不重復(fù)、不遺漏地一次走完七座橋,最后回到出發(fā)點(diǎn)?義教教材動(dòng)態(tài)情境5:當(dāng)我們?cè)诟黝愒诰€平臺(tái)上選擇產(chǎn)品與服務(wù)時(shí),常常會(huì)看到類似“買(mǎi)過(guò)該產(chǎn)品的用戶還買(mǎi)了……”“根據(jù)您的歷史學(xué)習(xí)記錄,為您推薦……”等的提示。義教教材動(dòng)態(tài)情境6:在購(gòu)物網(wǎng)站搜索、瀏覽、收藏喜歡的物品,查看系統(tǒng)自動(dòng)推薦的內(nèi)容是否符合你的喜好。
高中教材動(dòng)態(tài)問(wèn)題情境:通過(guò)研究發(fā)現(xiàn),將某些不同商品(如休閑食品和飲料)陳列在一起銷售,能使相關(guān)商品的銷量增長(zhǎng)20%~30%。若要尋找這些能相互促進(jìn)銷量的商品,就需要進(jìn)行商品的關(guān)聯(lián)分析,統(tǒng)計(jì)相關(guān)商品的關(guān)聯(lián)次數(shù),兩個(gè)不同商品如果同時(shí)出現(xiàn)在一個(gè)購(gòu)物籃中,就稱這對(duì)商品關(guān)聯(lián)1次。學(xué)校超市想通過(guò)商品的關(guān)聯(lián)分析來(lái)改進(jìn)商品的陳列,從而方便同學(xué)們購(gòu)物,增加相關(guān)商品的銷量。請(qǐng)根據(jù)超市某個(gè)時(shí)期內(nèi)的流水記錄,找出超市內(nèi)關(guān)聯(lián)次數(shù)最多的一對(duì)商品。
以上7個(gè)情境都源于最短路徑問(wèn)題,根據(jù)學(xué)生的知識(shí)背景和認(rèn)知水平選用不同的迭代情境,可以讓學(xué)生更好地理解問(wèn)題,進(jìn)而快速進(jìn)入算法學(xué)習(xí)。
2.活用多樣的算法設(shè)計(jì)求解過(guò)程
解決問(wèn)題的方法不是唯一的,針對(duì)某個(gè)問(wèn)題,可以設(shè)計(jì)多個(gè)算法來(lái)解決,但是不同算法的效率是不一樣的,算法有“好”與“差”之分。義教教材以“韓信點(diǎn)兵”的故事為例,分析算法的多樣性。
問(wèn)題描述:秦朝末年,楚漢相爭(zhēng)。有一次,韓信帶領(lǐng)1500名士兵打仗。戰(zhàn)后,死傷四五百人。在剩下的士兵中,他命令士兵3人一排,結(jié)果多出2名;接著命令士兵5人一排,結(jié)果多出3名;又命令士兵7人一排,結(jié)果又多出2名。韓信馬上宣布:我軍還有1073名勇士!
算法1:枚舉算法。
枚舉x在1000~1100范圍內(nèi)的每一個(gè)值,判斷條件“x除3余數(shù)為2、x除5余數(shù)為3、x除7余數(shù)為2”是否同時(shí)滿足,滿足條件的x就是要求的解。即:當(dāng)x=1000時(shí),條件“x除3余數(shù)為2、x除5余數(shù)為3、x除7余數(shù)為2”是否同時(shí)滿足?當(dāng)x=1001時(shí),條件“x除3余數(shù)為2、x除5余數(shù)為3、x除7余數(shù)為2”是否同時(shí)滿足?……當(dāng)x=1100時(shí),條件“x除3余數(shù)為2、x除5余數(shù)為3、x除7余數(shù)為2”是否同時(shí)滿足?
算法2:篩選法。
①用a存儲(chǔ)1000~1100范圍內(nèi)的數(shù);②在a中刪除不滿足“x除3余數(shù)為2”條件的數(shù);③在a中刪除不滿足“x除5余數(shù)為3”條件的數(shù);④在a中刪除不滿足“x除7余數(shù)為2”條件的數(shù);⑤找出a中剩下的數(shù)。
算法3:同余法。
可先找出同時(shí)滿足“x除3余數(shù)為2、x除5余數(shù)為3、x除7余數(shù)為2”三個(gè)條件的任意一個(gè)數(shù),如233,然后該數(shù)加減3、5、7的最小公倍數(shù)105的整數(shù)倍,在1000~1100范圍內(nèi)的數(shù)即是所求解。
用變量s表示所取到的同時(shí)滿足三個(gè)條件的任意一個(gè)數(shù),如233,變量k表示三個(gè)數(shù)的最小公倍數(shù)。通過(guò)加或減k的整數(shù)倍,使s的值大于等于1000且小于等于1100,可以采用循環(huán)結(jié)構(gòu),根據(jù)條件“s小于1000”來(lái)選擇加k或減k的值,可以采用分支結(jié)構(gòu)。
3.選用最優(yōu)的算法解決生活問(wèn)題
算法在生活中無(wú)處不在,從“問(wèn)題分解”到借助“算法”載體形成“解決問(wèn)題的策略或方法”的過(guò)程就是用計(jì)算機(jī)解決問(wèn)題的普遍方法。這種方法在網(wǎng)絡(luò)平臺(tái)的搭建及應(yīng)用的開(kāi)發(fā)、信息數(shù)據(jù)的處理及應(yīng)用、信息數(shù)據(jù)的安全及防護(hù)、人工智能的開(kāi)發(fā)及應(yīng)用等各個(gè)方面廣泛適用,認(rèn)識(shí)并合理利用在線生活背后的算法能夠幫助人們更好地解決各種問(wèn)題。
人們出行時(shí)常常使用的導(dǎo)航軟件就是五上教材路徑算法的應(yīng)用,其真實(shí)道路在電子地圖上抽象為點(diǎn)與線。導(dǎo)航軟件使用一定的算法對(duì)起點(diǎn)與終點(diǎn)之間的路徑進(jìn)行計(jì)算從而完成線路規(guī)劃,如利用Dijkstra算法可以計(jì)算出最短路徑、利用貪心算法可以推薦最好的即時(shí)路徑、利用蟻群算法可以知道大多數(shù)人選擇的路線。
在生活中,綜合運(yùn)用各種算法可以高效解決實(shí)際問(wèn)題。例如,在規(guī)劃出行時(shí),使用推薦算法獲得景點(diǎn)、飲食、住宿等相關(guān)推薦,使用路徑規(guī)劃算法獲得到達(dá)目的地的最佳路徑,使用估算預(yù)測(cè)算法預(yù)測(cè)路程用時(shí)、景點(diǎn)客流量等。
當(dāng)我們?cè)诟黝愒诰€平臺(tái)上選擇產(chǎn)品與服務(wù)時(shí),常常會(huì)看到“買(mǎi)過(guò)該產(chǎn)品的用戶還買(mǎi)了……”“根據(jù)您的歷史學(xué)習(xí)記錄,為您推薦……”等提示,這些都是推薦算法的具體應(yīng)用。常見(jiàn)的推薦算法包括基于用戶的推薦和基于物品的推薦,如圖4所示。
基于用戶的推薦算法,主要計(jì)算若干用戶間的相似度,將相似度高的人分到一個(gè)組,刪除目標(biāo)用戶與組內(nèi)成員重復(fù)的東西,剩下的就是系統(tǒng)要的推薦商品?;诋a(chǎn)品的推薦算法,主要計(jì)算商品之間的相似性、相近性,為目標(biāo)用戶推薦相似度高、相近性大的商品。
結(jié)束語(yǔ)
算法是程序的靈魂,編程主要用于驗(yàn)證算法、實(shí)現(xiàn)算法,進(jìn)而能夠?qū)λ惴ǖ恼_性與執(zhí)行效率進(jìn)行初步分析。好的算法可以提高辦事效率,降低選擇的成本,從而讓社會(huì)運(yùn)行更加高效。“算法”邏輯主線為教學(xué)實(shí)施提供了基本線索,它既是信息科技知識(shí)體系的內(nèi)在邏輯,又是課程內(nèi)容的主線脈絡(luò),也是教學(xué)實(shí)施的重要抓手?!八惴ā边壿嬛骶€體現(xiàn)了循序漸進(jìn)和螺旋式發(fā)展的教學(xué)策略,助力學(xué)生更好地走向未來(lái)的學(xué)習(xí)、生活。
參考文獻(xiàn):
[1]于穎,王衛(wèi)全.問(wèn)題解決:信息科技課程一體化實(shí)施的邏輯主線[J].中國(guó)信息技術(shù)教育,2024(02):4-11.
[2]秦春娟,趙永濤.貫穿邏輯主線的“物聯(lián)網(wǎng)實(shí)踐與探索”教學(xué)[J].中國(guó)信息技術(shù)教育,2023(24):20-23.
[3]李維明.義務(wù)教育信息科技課程標(biāo)準(zhǔn)中“邏輯主線”的認(rèn)識(shí)與理解[J].中國(guó)信息技術(shù)教育,2023(24):17-19.