王晓东电子计算机算法设计与分析第学习教案.pptx
《王晓东电子计算机算法设计与分析第学习教案.pptx》由会员分享,可在线阅读,更多相关《王晓东电子计算机算法设计与分析第学习教案.pptx(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1王晓东电子计算机算法王晓东电子计算机算法(sun f)设计与分析设计与分析第第第一页,共51页。算法算法算法算法(sun f(sun f)(Algorithm)(Algorithm)n n算法是指解决问题的一种方法或一个过程。算法是指解决问题的一种方法或一个过程。n n算法是若干指令的有穷序列,满足算法是若干指令的有穷序列,满足(m(m nz)nz)性质:性质:n n(1)(1)输入:有外部提供的量作为算法的输入。输入:有外部提供的量作为算法的输入。n n(2)(2)输出:算法产生至少一个量作为输出。输出:算法产生至少一个量作为输出。n n(3)(3)确定性:组成算法的每条指令是清晰,
2、无歧义的。确定性:组成算法的每条指令是清晰,无歧义的。n n(4)(4)有限性:算法中每条指令的执行次数是有限的,执行有限性:算法中每条指令的执行次数是有限的,执行每条指令的时间也是有限的。每条指令的时间也是有限的。第2页/共51页第二页,共51页。程序程序程序程序(chngx)(Program)(chngx)(Program)n n程序是算法用某种程序设计语言的具体实现。程序是算法用某种程序设计语言的具体实现。n n程序可以不满足算法的性质程序可以不满足算法的性质(4)(4)。n n例如操作系统,是一个在无限循环中执行的程序,因而不例如操作系统,是一个在无限循环中执行的程序,因而不是一个算法
3、。是一个算法。n n操作系统的各种任务可看成是单独的问题,每一个问题由操作系统的各种任务可看成是单独的问题,每一个问题由操作系统中的一个子程序通过操作系统中的一个子程序通过(tnggu)(tnggu)特定的算法来实现。特定的算法来实现。该子程序得到输出结果后便终止。该子程序得到输出结果后便终止。第3页/共51页第三页,共51页。问题问题问题问题(wnt)(wnt)求解求解求解求解(Problem Solving)(Problem Solving)理解(lji)问题精确(jngqu)解或近似解选择数据结构算法设计策略设计算法第4页/共51页第四页,共51页。算法算法算法算法(sun f(sun
4、f)复杂性分析复杂性分析复杂性分析复杂性分析 n n算法复杂性算法复杂性=算法所需要的计算机资源算法所需要的计算机资源(zyun)(zyun)n n算法的时间复杂性算法的时间复杂性T(n)T(n);n n算法的空间复杂性算法的空间复杂性S(n)S(n)。n n其中其中n n是问题的规模(输入大小)。是问题的规模(输入大小)。第5页/共51页第五页,共51页。算法算法算法算法(sun f(sun f)的时间复杂性的时间复杂性的时间复杂性的时间复杂性n n(1 1)最坏情况下的时间复杂性)最坏情况下的时间复杂性n n Tmax(n)=max T(I)|size(I)=n Tmax(n)=max T
5、(I)|size(I)=n n n(2 2)最好)最好(zu h(zu h o)o)情况下的时间复杂性情况下的时间复杂性n n Tmin(n)=min T(I)|size(I)=n Tmin(n)=min T(I)|size(I)=n n n(3 3)平均情况下的时间复杂性)平均情况下的时间复杂性n n Tavg(n)=Tavg(n)=n n 其中其中I I是问题的规模为是问题的规模为n n的实例,的实例,p(I)p(I)是实是实 例例I I出现的概率。出现的概率。第6页/共51页第六页,共51页。算法算法算法算法(sun f(sun f)渐近复杂性渐近复杂性渐近复杂性渐近复杂性n nT(n)
6、T(n),as n,as n;n n(T(n)-t(n)/T(n)(T(n)-t(n)/T(n)0 0,as nas n;n nt(n)t(n)是是T(n)T(n)的渐近性态,为算法的渐近复杂性。的渐近性态,为算法的渐近复杂性。n n在数学上,在数学上,t(n)t(n)是是T(n)T(n)的渐近表达式,是的渐近表达式,是T(n)T(n)略去低阶项留下略去低阶项留下的主项的主项(zh(zh xin xin)。它比。它比T(n)T(n)简单。简单。第7页/共51页第七页,共51页。渐近分析渐近分析渐近分析渐近分析(fnx)(fnx)的记号的记号的记号的记号n n在下面在下面(xi mian)(xi
7、 mian)的讨论中,对所有的讨论中,对所有n n,f(n)f(n)0 0,g(n)g(n)0 0。n n(1 1)渐近上界记号)渐近上界记号OOn nO(g(n)=f(n)|O(g(n)=f(n)|存在正常数存在正常数c c和和n0n0使得对所有使得对所有n n n0 n0有:有:0 0 f(n)f(n)cg(n)cg(n)n n(2 2)渐近下界记号)渐近下界记号 n n (g(n)=f(n)|(g(n)=f(n)|存在正常数存在正常数c c和和n0n0使得对所有使得对所有n n n0 n0有:有:0 0 cg(n)cg(n)f(n)f(n)第8页/共51页第八页,共51页。n n(3 3
8、)非紧上界记号)非紧上界记号(j h(j h o)o o)o n no(g(n)=f(n)|o(g(n)=f(n)|对于任何正常数对于任何正常数c0c0,存在正数和,存在正数和n0 0n0 0使得对使得对所有所有n n n0 n0有:有:0 0 f(n)cg(n)f(n)0c0,存在正数和,存在正数和n0 0n0 0使得使得对所有对所有n n n0 n0有:有:0 0 cg(n)f(n)cg(n)f(n)n n等价于等价于 f(n)/g(n)f(n)/g(n),as nas n。n nf(n)f(n)(g(n)(g(n)g(n)g(n)o(f(n)o(f(n)第9页/共51页第九页,共51页。
9、n n(5 5)紧渐近界记号)紧渐近界记号 n n(g(n)=f(n)|(g(n)=f(n)|存在存在(cnzi)(cnzi)正常数正常数c1,c2c1,c2和和n0n0使得对所使得对所有有n n n0 n0有:有:c1g(n)c1g(n)f(n)f(n)c2g(n)c2g(n)n n 定理定理1 1:(g(n)=O(g(n)(g(n)=O(g(n)(g(n)(g(n)第10页/共51页第十页,共51页。渐近分析记号在等式渐近分析记号在等式渐近分析记号在等式渐近分析记号在等式(dngsh)(dngsh)和不等式和不等式和不等式和不等式(dngsh)(dngsh)中的意义中的意义中的意义中的意义
10、n nf(n)=f(n)=(g(n)(g(n)的确切意义是:的确切意义是:f(n)f(n)(g(n)(g(n)。n n一般情况下,等式一般情况下,等式(dngsh)(dngsh)和不等式和不等式(dngsh)(dngsh)中的渐近记号中的渐近记号(g(n)(g(n)表示表示(g(n)(g(n)中的某个中的某个函数。函数。n n例如:例如:2n2+3n+1=2n2+2n2+3n+1=2n2+(n)(n)表示表示n n 2n2+3n+1=2n2+f(n)2n2+3n+1=2n2+f(n),其中,其中f(n)f(n)是是(n)(n)中某个函数。中某个函数。n n等式等式(dngsh)(dngsh)和
11、不等式和不等式(dngsh)(dngsh)中渐近记号中渐近记号O,o,O,o,和和的意义是类似的。的意义是类似的。第11页/共51页第十一页,共51页。渐近分析渐近分析渐近分析渐近分析(fnx)(fnx)中函数比较中函数比较中函数比较中函数比较n nf f(n n)=)=O O(g g(n n)a a b;b;n nf f(n n)=)=(g g(n n)a a b;b;n nf f(n n)=)=(g g(n n)a a=b;=b;n nf f(n n)=)=o o(g g(n n)a a b;b.b.第12页/共51页第十二页,共51页。渐近分析记号渐近分析记号渐近分析记号渐近分析记号(j
12、 h(j h o)o)的若干性质的若干性质的若干性质的若干性质n n(1 1)传递性:)传递性:)传递性:)传递性:n nf f(n n)=)=(g g(n n),g g(n n)=)=(h h(n n)f f(n n)=)=(h h(n n);n nf f(n n)=)=O O(g g(n n),g g(n n)=)=O O (h h(n n)f f(n n)=)=O O (h h(n n);n nf f(n n)=)=(g g(n n),g g(n n)=)=(h h(n n)f f(n n)=)=(h h(n n);n nf f(n n)=)=o o(g g(n n),g g(n n)=
13、)=o o(h h(n n)f f(n n)=)=o o(h h(n n);n nf f(n n)=)=(g g(n n),g g(n n)=)=(h h(n n)f f(n n)=)=(h h(n n);第13页/共51页第十三页,共51页。n n(2 2)反身)反身)反身)反身(f(f n shn)n shn)性:性:性:性:n nf(n)=f(n)=(f(n)(f(n);n nf(n)=O(f(n)f(n)=O(f(n);n nf(n)=f(n)=(f(n).(f(n).n n(3 3)对称性:)对称性:)对称性:)对称性:n nf(n)=f(n)=(g(n)(g(n)g(n)=g(n)
14、=(f(n).(f(n).n n(4 4)互对称性:)互对称性:)互对称性:)互对称性:n nf(n)=O(g(n)f(n)=O(g(n)g(n)=g(n)=(f(n)(f(n);n nf(n)=o(g(n)f(n)=o(g(n)g(n)=g(n)=(f(n)(f(n);第14页/共51页第十四页,共51页。n n(5 5)算术)算术)算术)算术(sunsh)(sunsh)运算:运算:运算:运算:n nO(f(n)+O(g(n)=O(maxf(n),g(n)O(f(n)+O(g(n)=O(maxf(n),g(n);n nO(f(n)+O(g(n)=O(f(n)+g(n)O(f(n)+O(g(n
15、)=O(f(n)+g(n);n nO(f(n)*O(g(n)=O(f(n)*g(n)O(f(n)*O(g(n)=O(f(n)*g(n);n nO(cf(n)=O(f(n)O(cf(n)=O(f(n);n ng(n)=O(f(n)g(n)=O(f(n)O(f(n)+O(g(n)=O(f(n)O(f(n)+O(g(n)=O(f(n)。第15页/共51页第十五页,共51页。n n规则规则(guz)O(f(n)+O(g(n)=O(maxf(n),g(n)(guz)O(f(n)+O(g(n)=O(maxf(n),g(n)的证明:的证明:n n对于任意对于任意f1(n)f1(n)O(f(n)O(f(n),
16、存在正常数,存在正常数c1c1和自然数和自然数n1n1,使得对所有,使得对所有n n n1 n1,有,有f1(n)f1(n)c1f(n)c1f(n)。n n类似地,对于任意类似地,对于任意g1(n)g1(n)O(g(n)O(g(n),存在正常数,存在正常数c2c2和自然数和自然数n2n2,使得对所,使得对所有有n n n2 n2,有,有g1(n)g1(n)c2g(n)c2g(n)。n n令令c3=maxc1,c2c3=maxc1,c2,n3=maxn1,n2 n3=maxn1,n2,h(n)=maxf(n),g(n)h(n)=maxf(n),g(n)。n n则对所有的则对所有的 n n n3
17、n3,有,有n nf1(n)+g1(n)f1(n)+g1(n)c1f(n)+c2g(n)c1f(n)+c2g(n)n n c3f(n)+c3g(n)=c3(f(n)+g(n)c3f(n)+c3g(n)=c3(f(n)+g(n)n n c32 maxf(n),g(n)c32 maxf(n),g(n)n n =2c3h(n)=O(maxf(n),g(n).=2c3h(n)=O(maxf(n),g(n).第16页/共51页第十六页,共51页。算法算法算法算法(sun f(sun f)渐近复杂性分析中常用函数渐近复杂性分析中常用函数渐近复杂性分析中常用函数渐近复杂性分析中常用函数n n(1 1)单调函
18、数)单调函数)单调函数)单调函数(hnsh)(hnsh)n n单调递增:单调递增:单调递增:单调递增:m m n n f(m)f(m)f(n);f(n);n n单调递减:单调递减:单调递减:单调递减:m m n n f(m)f(m)f(n);f(n);n n严格单调递增:严格单调递增:严格单调递增:严格单调递增:m n m n f(m)f(n);f(m)f(n);n n严格单调递减:严格单调递减:严格单调递减:严格单调递减:m n m f(n).f(m)f(n).n n(2 2)取整函数)取整函数)取整函数)取整函数(hnsh)(hnsh)n n x x :不大于:不大于:不大于:不大于x x
19、的最大整数;的最大整数;的最大整数;的最大整数;n n x x :不小于:不小于:不小于:不小于x x的最小整数。的最小整数。的最小整数。的最小整数。第17页/共51页第十七页,共51页。取整函数的若干取整函数的若干取整函数的若干取整函数的若干(rugn)(rugn)性质性质性质性质n n x-1 x-1 x x x x x x x+1 0a,b0,有:,有:n n n/a n/a /b /b =n/ab n/ab ;n n n/a n/a /b /b =n/ab n/ab ;n n a/b a/b (a+(b-1)/b;(a+(b-1)/b;n n a/b a/b (a-(b-1)/b;(a
20、-(b-1)/b;n n f(x)=f(x)=x x ,g(x)=,g(x)=x x 为单调为单调(dndio)(dndio)递增函数。递增函数。第18页/共51页第十八页,共51页。n n(3 3)多项式函数)多项式函数)多项式函数)多项式函数(hnsh)(hnsh)n n p(n)=a0+a1n+a2n2+adnd p(n)=a0+a1n+a2n2+adnd;ad0;ad0;n n p(n)=p(n)=(nd);(nd);n n f(n)=O(nk)f(n)=O(nk)f(n)f(n)多项式有界;多项式有界;多项式有界;多项式有界;n n f(n)=O(1)f(n)=O(1)f(n)f(n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 王晓东 电子计算机 算法 设计 分析 学习 教案
限制150内