資源描述:
《對分查找算法及程序?qū)崿F(xiàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、對分查找算法及程序?qū)崿F(xiàn)設(shè)計(jì)者?邊楚女單位浙江省瑞安中學(xué)?教材浙江教育出版社算法與程序設(shè)計(jì)適用范圍?選修模塊課時一?課時聯(lián)系方式bcn@pyjy.net一、設(shè)計(jì)思想對分查找是計(jì)算機(jī)科學(xué)中的一個基礎(chǔ)算法。對于一個基礎(chǔ)算法的學(xué)習(xí),同樣可以讓學(xué)生在一定的情境下,經(jīng)歷分析問題、確定算法、編程求解等用計(jì)算機(jī)解決問題的基本過程。本堂課以一個游戲暖場,同時激活學(xué)生的思維,引導(dǎo)學(xué)生去探索游戲或生活背后的科學(xué)原理。為了讓學(xué)生在教師的引導(dǎo)下能自我解析算法的形成過程,本課分解了問題動作,找出問題的全部可能情況,在對全部可能情況總結(jié)歸納的情況下,得出對分查找的基礎(chǔ)算法,最后在程序中得到實(shí)現(xiàn),從而使學(xué)生建立起對分查找算法
2、形成的科學(xué)邏輯結(jié)構(gòu)。二、教材分析本課的課程標(biāo)準(zhǔn)內(nèi)容:(一)計(jì)算機(jī)解決問題的基本過程(1)結(jié)合實(shí)例,經(jīng)歷分析問題、確定算法、編程求解等用計(jì)算機(jī)解決問題的基本過程,認(rèn)識算法和程序設(shè)計(jì)在其中的地位和作用。(三)算法與問題解決例舉C查找、排序與問題解決(2)通過實(shí)例,掌握使用數(shù)據(jù)查找算法設(shè)計(jì)程序解決問題的方法。本課的《學(xué)科教學(xué)指導(dǎo)意見》內(nèi)容:基本要求:1.初步掌握對分查找算法。2.初步掌握對分查找算法的程序?qū)崿F(xiàn)。教材內(nèi)容:第二章算法實(shí)例2.4.3對分查找和第五章5.4查找算法的程序?qū)崿F(xiàn),課題定為對分查找算法及程序?qū)崿F(xiàn),安排兩個課時,第一課時著重是對分查找算法的形成和初步程序?qū)崿F(xiàn),第二課時利用對分查找算
3、法解決一些實(shí)際問題的程序?qū)崿F(xiàn),本教學(xué)設(shè)計(jì)為第一課時。從《課程標(biāo)準(zhǔn)》和《學(xué)科教學(xué)指導(dǎo)意見》對本課教學(xué)內(nèi)容的要求來看,要求學(xué)生能從問題出發(fā),通過相應(yīng)的科學(xué)步驟形成對分查找的算法。對學(xué)生來說,要求通過這一課時的學(xué)習(xí)能初步掌握或了解對分查找的前提條件、解決問題的對象,明確對分查找算法結(jié)構(gòu)和對分查找的意義。三、學(xué)情分析學(xué)生應(yīng)該已經(jīng)掌握程序設(shè)計(jì)的基本思想,掌握賦值語句、選擇語句、循環(huán)語句的基本用法和VB基本操作,這節(jié)課學(xué)生可能會遇到的最大問題是:如何歸納總結(jié)對分查找解決不同情況問題的一般規(guī)律,鑒于此,在教學(xué)中要積極引導(dǎo)學(xué)生采取分解動作、比較遷移等學(xué)習(xí)策略。四、教學(xué)目標(biāo)知識與技能:理解對分查找的概念和特點(diǎn),
4、通過分步解析獲取對分查找的解題結(jié)構(gòu),初步掌握對分查找算法的程序?qū)崿F(xiàn)。過程與方法:通過分析多種不同的可能情況,逐步歸納對分查找的基本思想和方法,確定解題步驟。情感態(tài)度與價值觀:通過實(shí)踐體驗(yàn)科學(xué)解題的重要性,增強(qiáng)效率意識和全局觀念,感受對分查找算法的魅力,養(yǎng)成始終堅(jiān)持、不斷積累才能獲得成功的意志品質(zhì)。五、重點(diǎn)難點(diǎn)教學(xué)重點(diǎn)和難點(diǎn):分解并理解對分查找的過程。六、教學(xué)策略與手段1、教學(xué)線索:游戲引領(lǐng)---提出對分查找原理---解析對分查找的算法特征---實(shí)踐解決問題。2、學(xué)習(xí)線索:分解問題---歸納問題---實(shí)踐提升,在三個階段的不斷推進(jìn)中明確對分查找算法,總結(jié)規(guī)律。七、教學(xué)過程1、新課導(dǎo)入(1)熱身:
5、游戲(2分鐘)教師展示一件特色物品,讓一個學(xué)生來猜這個物品的價格,其他學(xué)生只需要根據(jù)這個學(xué)生猜出的價格提示“高了”或是“低了”,如果學(xué)生能在五次內(nèi)猜對這個物品的價格,就把這件物品“贈送”給他……。(2)討論:你覺得怎么樣猜可以猜的快一點(diǎn)呢?有什么技巧嗎?你從這個游戲當(dāng)中得到什么啟示?(3分鐘)(3)教師引導(dǎo):這個世界不是缺少問題,而是缺少發(fā)現(xiàn),其實(shí)在這個游戲的背后,含有一個非常經(jīng)典的算法。引出對分查找的的概念。2、新課:教學(xué)步驟一:分析對分查找的原理和思想。(3分鐘)(1)對分查找是效率很高的查找方法,但被查找的數(shù)據(jù)必須是有序的。(2)首先將查找的數(shù)與有序數(shù)組內(nèi)處于中間位置的數(shù)據(jù)比較,如果中間
6、位置上的數(shù)與查找的數(shù)不同,根據(jù)有序性,就可確定應(yīng)該在數(shù)組的前半部分還是后半部分繼續(xù)查找。(3)在新確定的范圍內(nèi),繼續(xù)按上述方法進(jìn)行查找,直到獲得最終結(jié)果。教學(xué)步驟二:分解對分查找算法(5分鐘)假設(shè):用一個數(shù)組d(1to10)來存放升序的元素序列,用i表示查找范圍的起始位置的下標(biāo),j表示終止位置的下標(biāo),mid表示中間位置元素的下標(biāo)。52484535272218171510midi=jd(10)d(9)d(8)d(7)d(6)d(5)d(4)d(3)d(2)d(1)(1)第一種情況:要找的值在后半部分;以查找鍵KEY=48為例分析第一次比較:范圍d(1)~d(10),mid=(1+10)2,d(
7、mid)