算法复习整理(呕心之作).pdf

想预览更多内容,点击预览全文

申明敬告:

本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己完全接受本站规则且自行承担所有风险,本站不退款、不进行额外附加服务;如果您已付费下载过本站文档,您可以点击这里二次下载

文档介绍

实用文档《算法设计与分析》复习提纲2011.06.121引言(ch1)1.什么是算法及其特征算法是通过一系列有限的指令集构成的对特定问题进行求解的计算机执行描述。算法特征:输入、输出、有限性、确定性、通用性2.问题实例和问题规模问题实例:解决一个问题所需要的所有输入问题规模:算法输入实例的大小2算法初步(ch2)1.插入排序算法INSERT_SORT(A)forj<-2tolength[A]Dokey<-A[j]//将A[j]插入到已排序的数列A[1..j-1]i<-j-1whilei>0andA[i]>keydoA[i+1]<-A[i]//给A[j]腾出位置i<-i-1A[i+1]<-key//找到位置插入key2.算法复杂性及其度量(1)时间复杂性和空间复杂性;一个算法所需要的时间通常和输入的规模成同步增长,所以我们通常把算法运行的时间写成输入规模的某种形式,称为时间复杂度。算法的空间复杂度通常是指算法所需要的内存存储空间的大小的量级,通常也写成输入规模的某种形式。(2)最坏、最好和平均情形复杂性;算法的最坏运行时间是指在任何输入情况下运行时间的一个上界。最好的复杂度是指在任何输入情况下运行时间的一个下界。平均时间复杂度是指算法运行时间的数学期望。3.插入排序的最坏、最好和平均时间2插入排序的最坏时间复杂度是O(n)发生在输入是逆序的情况下,最好时2间复杂度是O(n)发生输入是顺序的情况下。平均时间复杂度同O(n)。3.归并排序算法及其时间复杂性MERGE(A,p,q,r)//将两个排好序的数组合并n<-q-p+112n<-r-q//r-(q+1)+1标准文案实用文档createarraysL[1..n1+1]andR[1..n2+1]//建立两个数组fori<-1ton1doL[i]<-A[p+i

最近下载