- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
离散数课件-第2章-2
*;第二章 算法基础
; 2.1 Algorithms 算法
2.2 Complexity of Algorithms 算法的复杂性
2.3 The Integers and Division 整数和除法
2.4 Integers and Algorithm 整数和算法
2.5 Applications of Number Theory 数论的应用
2.6 Matrices 矩阵
2.7 Recursion 递归;算法的复杂性;函数的增长;函数的增长; 最通用的分析函数增长的符号,即大О符号
【定义1】令f和g为从整数集合或实数集合到实数集合的函数。若有常数C和k,使得只要xk,就有|f(x)| ? C| g(x)|,则称f(x)是О(g(x))。
( О(g(x))读作f(x) 是大О(g(x)));The function f(x) is O(g(x)); 1) f(x) ? x2 + 2x + 1
?x2 + 2x2 + x2
? 4x2? Cx2? Cg(x)
For all x ? 1; 2)0 ? x2 + 2x + 1 ? x2 + x2 + x2 = 3x2
whenever x2
3) x2可以被函数值大于x2的任何函数取代。
如 f(x)是О(x3), f(x)是O(x2+2x+7)
所以,x2 is О(x2+2x+1).;Note: f(x)是О(g(x))而且g(x)是О(f(x)),我们把满足上述两个大O关系的函数f(x)和g(x)称为同阶
Two functions f(x) and g(x) that satisfy both of these big- О relationships are of the same order.
;〖Example 2〗 证明 7x2是O(x3). ;〖Example 3〗 x3 是 O(7x2)吗?;【定理1】令f(x) = anxn + an-1xn-1 +…+ a1x+ a0,其中a0, a1 ,…, an 为实数,那么f(x)是O(xn).
【Theorem1】Let f(x) = anxn + an-1xn-1 +…+ a1x+ a0,where a0, a1 ,…, an are real numbers. Then f(x) is O(xn).;Proof:
用三角不等式, if x1 ,我们有;〖Example 4〗 用大O符号估计前n个正整数的和。;〖Example 5〗 给出阶乘函数和阶乘对数的大O估计。;Common Complexity Functions;Growth of Some Common Functions(常用函数增长图);函数的增长; Addition of functions(函数的和)
【定理2】假定f1(x) 是O(g1(x)),f2(x) 是 O(g2(x)),那么(f1 + f2)(x) 是O(max(g1(x),g2(x))).
【Theorem2】 If f1(x) is O(g1(x)) and f2(x) is O(g2(x)), then (f1 + f2)(x) is O(max(g1(x),g2(x))).;〖Example 6〗 n2 + log(n!) 的大O估计
Solution:
n2 = O(n2)
log(n!) = O(n log n)
Since O(n2) O(n log n),
n2 +n log(n!) = O(n2);Multiplication of functions函数的乘积
【定理3】假定f1(x) 是O(g1(x)), f2(x) 是 O(g2(x)),那么(f1f2)(x)是(g1(x)g2(x)).
【Theorem3】 If f1(x) is O(g1(x)) and f2(x) is O(g2(x)),then (f1f2)(x) is O(g1(x)g2(x)).;〖Example 7〗 3nlog(n!) 的大O估计
Solution:
3n = O(n)
log(n!) = O(n log n)
3nlog(n!) = O(n ?n log n)
文档评论(0)