資源描述:
《搜索算法的優(yōu)化》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、西南交通大學(xué)本科畢業(yè)設(shè)計(jì)(論文)第II頁(yè)安慶四中綜合實(shí)踐課程《創(chuàng)新思維-程序設(shè)計(jì)》(論文)數(shù)組簡(jiǎn)談年級(jí):7學(xué)號(hào):未知姓名:朱榕添指導(dǎo)老師:范江文二零一七年一月摘要數(shù)組可以把一大批具有相同性質(zhì)的數(shù)據(jù)進(jìn)行讀取,運(yùn)算,比用簡(jiǎn)單變量處理大量數(shù)據(jù)要快速和簡(jiǎn)單的多。所以編輯程序中數(shù)組使用的次數(shù)不會(huì)太少,和它相關(guān)的排序也不會(huì)少,靈活運(yùn)用數(shù)組才是得分的訣竅。關(guān)鍵詞:數(shù)組;排序;13目錄一、一維數(shù)組和二維數(shù)組1.思想(1)何為一維與二維數(shù)組2.應(yīng)用3.優(yōu)缺點(diǎn)二、數(shù)組排序間的轉(zhuǎn)化1.思想(1)數(shù)據(jù)排序2.應(yīng)用3.優(yōu)缺點(diǎn)三、總結(jié)四、附錄1.致謝2.
2、參考文獻(xiàn)13一、一維數(shù)組和二維數(shù)組1.思想(1)何為一維和二維數(shù)組數(shù)組,顧名思義,就是相同數(shù)據(jù)類型的元素按一定順序排列的集合。一維數(shù)組是由數(shù)字組成的結(jié)構(gòu)單一的數(shù)組,是二維數(shù)組和多維數(shù)組的基礎(chǔ)。二維數(shù)組則是以數(shù)組作為數(shù)組元素的數(shù)組。2.應(yīng)用例1:旅館開門【問題描述】旅館里有100個(gè)房間,以1至100編號(hào),第一個(gè)服務(wù)員把所有的房間門都打開了,第二個(gè)服務(wù)員把所有編號(hào)是2的倍數(shù)的房間進(jìn)行“相反處理”……,以后每個(gè)服務(wù)員都是如此,問當(dāng)?shù)趎個(gè)服務(wù)員來過后,哪幾扇門是開的。【輸入格式】由文件door.in給出輸入數(shù)據(jù)。第一行有1個(gè)正整數(shù)n(
3、1≤n≤100)。表示來過幾個(gè)服務(wù)員。【輸出格式】將開著的門輸出到文件door.out?!据斎霕永?0013【輸出樣例】149162536496481100【分析】本題如果運(yùn)用整型數(shù)組則難以辨別門是否開關(guān),因?yàn)橐簧乳T只有倆種狀態(tài),所以采用布爾型可更加快捷簡(jiǎn)單程序1:(整型)programdoor;vara:array[1..100]oflongint;i,j,n:longint;beginassign(input,'door.in');reset(input);assign(output,'door.out');rewrit
4、e(output);read(n);fori:=1tondobeginforj:=1tondoifjmodi=0theninc(a{j});end;fori:=1tondoifa{i}mod2=1thenwrite(i,’’);13close(input);close(output);end.那么,能不能采用布爾型以提高時(shí)間效率呢?可以發(fā)現(xiàn),一扇門只有倆種狀態(tài)。于是,我們采用布爾型更加快捷簡(jiǎn)單.程序2:(布爾型)programdoor;vara:array[1..100]ofBoolean;i,j,n:longint;begi
5、nassign(input,'door.in');reset(input);assign(output,'door.out');rewrite(output);read(n);fori:=1tondoforj:=itondoifjmodi=0thena{j}:=not(a{j});fori:=1tondoifa{i}thenwrite(i,’’);close(input);13close(output);end.例2:楊輝三角【問題描述】打印n行楊輝三角。【輸入格式】由文件yanghuisanjiao.in給出輸入數(shù)據(jù)。第一行
6、有1個(gè)正整數(shù)n(3≤n≤100),表示打印楊輝三角的行數(shù)?!据敵龈袷健繉钶x三角輸出到文件yanghuisanjiao.out?!据斎霕永?【輸出樣例】11112113【分析】本題如果運(yùn)用一維數(shù)組則難以打印,因?yàn)闂钶x三角有很多行,用一維數(shù)組推過于緩慢,所以采二維數(shù)組可更加快捷簡(jiǎn)單程序:programyanghuisanjiao;vara:array[1..10000,1..10000]ofqword;i,j,n:longint;beginassign(input,'yanghuisanjiao.in');reset(inpu
7、t);assign(output,'yanghuisanjiao.out');rewrite(output);readln(n);a[1,1]:=1;a[2,1]:=1;a[2,2]:=1;//單獨(dú)處理前兩行writeln('1');writeln('11');fori:=3tondoforj:=1toidobegin13if(j=i)or(j=1)thena[i,j]:=1elsea[i,j]:=a[i-1,j-1]+a[i-1,j];ifj=ithenwriteln(a[i,j])elsewrite(a[i,j],'');
8、end;//一行一行推,同時(shí)輸出close(input);close(output);end.3.優(yōu)缺點(diǎn)優(yōu)點(diǎn):編程復(fù)雜度低缺點(diǎn):有些題目用二維數(shù)組過于多余,思維復(fù)雜度較高二.?dāng)?shù)組排序間的轉(zhuǎn)化1.思想(1)數(shù)組間經(jīng)常有排序題,排序方法有很多種,靈活運(yùn)用才是得分的關(guān)鍵132.應(yīng)用