數(shù)據(jù)結(jié)構(gòu)2015課件introduction_第1頁(yè)
數(shù)據(jù)結(jié)構(gòu)2015課件introduction_第2頁(yè)
數(shù)據(jù)結(jié)構(gòu)2015課件introduction_第3頁(yè)
數(shù)據(jù)結(jié)構(gòu)2015課件introduction_第4頁(yè)
數(shù)據(jù)結(jié)構(gòu)2015課件introduction_第5頁(yè)
已閱讀5頁(yè),還剩89頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

對(duì)象=算法+數(shù)據(jù)結(jié)構(gòu)AlgorithmandData高級(jí)程序語(yǔ)言設(shè)計(jì)3 - B+96.)

#

=C %%%%4- @6- H Algorithm—thekingpinData—variables,databases,Abstraction—conceptualizing,Query—search,conditionals,Sensing&Feedback—robotics迭代Iterations—loops,recursion系統(tǒng)Systems6Asking:Whatisthepowerandlimitofhumanandcomputerintelligence?Asking:Howdifficultistheproblem?Asking:Howcanitbesolved?Asking:HowcantechnologybeappliedtotheAsking:Whatcomputationalstrategiesmightbe77數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言描述)(修訂版)工業(yè)出版社2014年1月數(shù)據(jù)結(jié)構(gòu)與算法分析——C語(yǔ)言描述(美)MarkAllenWeiss著 馮舜璽譯機(jī)械工業(yè)出版社 嚴(yán)慰敏清華大學(xué)出版搜索(第三版)美)RobertSedgewick著 算法V(C++實(shí)現(xiàn))——圖算法(第三版)(美)RobertSedgewick著 8SOMETHING啊哈!算法人民郵電出版社,2014年/(visualizingdatastructuresandalgorithmsthroughanimation)網(wǎng)易公開(kāi)課/國(guó)際名校公開(kāi)課PAT-計(jì)算機(jī)程序設(shè)計(jì)能力考試Google中國(guó)、Baidu等企業(yè)優(yōu)先錄用PAT成績(jī)優(yōu)2013.11.2第一部 引 第三部 排序與選

樹(shù)圖對(duì)象=算法+數(shù)據(jù)結(jié)構(gòu)分析問(wèn) 算法設(shè) 數(shù)學(xué)抽象數(shù)學(xué)問(wèn)

個(gè)較小圓盤的移動(dòng)問(wèn)題,以此類推,直至voidhanoi(intn,inta,intb,int{hanoi(n-1,}}Step1Step doStepn1968年美國(guó)唐.歐.克努特教授(中文名字高德納,1938~,現(xiàn)代計(jì)算機(jī)科學(xué)的鼻祖,1974年圖靈獎(jiǎng)獲得者)所著的《計(jì)算機(jī)程序設(shè)計(jì)藝術(shù)》(目前正在撰寫(xiě)第六卷)其操作的著作1999年底被AmericanScientist列為20世界最佳{intlongresult;for(inti=0;i<x;{}}{intlongresult;for(inti=0;i<x;{/*result=2*x;*/result=x+x;}}int–32768~23767+,- 數(shù)組結(jié)構(gòu)記錄結(jié)構(gòu)數(shù)據(jù)類型(Data(本身也是一個(gè)復(fù)雜數(shù)據(jù)類型AbstractDataType,優(yōu)勢(shì)(P.9-Step1Step doStepn分析問(wèn) 算法設(shè) 數(shù)學(xué)抽象數(shù)學(xué)問(wèn)

〖ExampleInsertionSort(方法:Fromthoseintegersthatarecurrentlyunsorted,findthesmallestandplaceitnextinthesortedlist.(自然語(yǔ)言描述)for(i=0;i<n;i++)Examinelist[0]tolist[n-1]andsupposethattheintegerisatInterchangelist[i]and}

Algorithmin可行性:合法輸入正確輸出{process_serial_cmds();*處理串行輸入*/process_kbd_cmds();*處理鍵盤輸入*/adjust_ctrlr_parms();/*調(diào)整CPU參數(shù)*/counter++;/*counter遞增*/} 實(shí)例二:插入排序算法(InsertionSort) Matrixvoidadd(

a[][MAX_SIZEb[][MAX_SIZEc[][MAX_SIZErows,intcols{ i,jfor(i=0;i<rows;i++)for(j=0;j<cols;j++)c[i][j]=a[i][j]+b[i][j}

???????????????T(rows,cols)=2*rows*cols+rows+1S(rows,cols)=3*rows*cols+4 實(shí)例二:插入排序算法(InsertionSort)INSERTANELEMENTTOASORTEDLISTInput1:listis23567Newelement:InsertthenewelementatthefirstofthelistInput2: listis235678Newelement:InsertthenewelementatthelastofthelistInput3: listis235678Newelement:InsertthenewelementatthemiddleoftheINSERTANELEMENTTOASORTEDLISTInput1:listis23567Newelement: 1??InsertthenewelementatthefirstofthelistInput2: listis235678Newelement: 6??InsertthenewelementatthelastofthelistInput3: listis235678Newelement: 3??Insertthenewelementatthemiddleofthe最壞情況下Tmax(n)=max{t(i)|i∈Dn}最好情況下Tmin(n)=min{t(i)|i∈Dn}情況下Tavg(n)=∑p(i)t(i)(i∈Dn)N→T(N)N→∞時(shí),(T(N)-t(N)T(N)t(N)是T(N)當(dāng)N→t(N)是T(N)略去低階項(xiàng)留下的主項(xiàng),比T(n漸近上界符號(hào)g(n)f(n)為定義在正數(shù)集上的正函數(shù)f(n)=O(g(n))使得對(duì)所有nn0有:0≤f(n)≤cg(n)2.7N^3+3.8N^2+5.3=O(N^3)=O(N^4)反例:2.7N^3+3.8N^2+5.3≠O(N^2)O(f)+O(g)=O(max(f,g))O(f)+O(g)=O(f+g)O(f)*O(g)=O(f*g)O(cf)=O(f)g=O(f)可以推導(dǎo)得到O(f)+O(g)O(f)f(n)=Ω使得對(duì)所有n≥n0有0cg(n)2.7N^3+3.8N^2+5.3=Ω(N^3)=Ω(N^2)反例:2.7N^3+3.8N^2+5.3≠O(N^4)θ同階:f(n)=O(g(n))且f(n)=of(n)=存在正常數(shù)ε和使得對(duì)所有n≥n0有Timeforf(n)instructionsona10^9instr/secnus=microsecond=10-6secondsms=millisecond=10-3secondssec=

min=minuteshr=hoursd=

yr= }T(n)O(n問(wèn)題描述:已知n個(gè)元素存放在區(qū)間[first:last)中,是否等于value,如果不是,就繼續(xù)往下搜索,一直到找到某個(gè)數(shù)據(jù)等于value或者搜索整個(gè)區(qū)間發(fā)while(first!=last&&returnfirst;=(1-

half=len>>1;//除以2middle=first+half;//中點(diǎn){first=middle;len=0;}

if 如果value>*middle,接 來(lái)的搜索只需要在后半部 進(jìn)

}}最壞情況:元素value不在數(shù)組中,while E=6

Y#V-1

G% " AVL, Given(possiblynegative)integersA1,A2,…,AN,findmaximumvalue

AkintMaxSubsequenceSum(constintA[],intN{intThisSum,MaxSum,i,j,/* MaxSum= /*initializethemaximumsum/* for(i=0;i<N;i++)/*startfromA[i]/* for(j=i;j<N;j++) /*endatA[j]/* ThisSum=/* for(k=i;k<=j;k++/* ThisSum+=A[k];/*sumfromA[i]toA[j]/* if(ThisSum>MaxSum/* MaxSum=ThisSum;/*updatemaxsum/* return T(N)=O(N3intMaxSubsequenceSum(constintA[],intN{intThisSum,MaxSum,i,/* MaxSum= /*initializethemaximumsum/* for(i=0;i<N;i++) /*startfromA[i]/* ThisSum=/* for(j=i;j<N;j++) /*endatA[j]/* ThisSum+=A[j];/*sumfromA[i]toA[j]/* if(ThisSum>MaxSum/* MaxSum=ThisSum;/*updatemaxsum}/*endforTj}/*endforTi/* return}T(N)=O(N2遞歸的概念(C

intfactorial(int{if(n==0)return1;returnn*factorial(n-1);實(shí)例2:Fibonacci數(shù) intfibonacci(int{if(n<=1)returnreturnfibonacci(n-1)+fibonacci(n-}當(dāng)n=1時(shí),perm(R)=(r),其中r是集合R中唯(r1)perm(R1),(r2)perm(R2),…,(rn)

voidperm(intlist[],intk,int int for(i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論