当前位置: 首页 > news >正文

做酒水网站陕西有哪些/广州seo优化费用

做酒水网站陕西有哪些,广州seo优化费用,封面型网站怎么做的,郑州企业网站排名master method(主定理) 假设有递推关系式 T(n)aT(nb)f(n)T(n) aT(\frac{n}{b}) f(n)T(n)aT(bn​)f(n) ,其中 nnn 为问题的规模,aaa 为递推的子问题数量,nb\frac{n}{b}bn​ 为每个子问题的规模(假设每个子…

master method(主定理)

假设有递推关系式 T(n)=aT(nb)+f(n)T(n) = aT(\frac{n}{b}) + f(n)T(n)=aT(bn)+f(n) ,其中 nnn 为问题的规模,aaa 为递推的子问题数量,nb\frac{n}{b}bn 为每个子问题的规模(假设每个子问题的基本规模基本一样),f(n)f(n)f(n) 为递推以外进行的计算工作。

a≥1,b>1a \geq 1, b > 1a1,b>1 为常数,f(n)f(n)f(n) 为函数,T(n)T(n)T(n)​ 为非负整数。则有以下结果(分类讨论):

(1)若 f(n)=O(nlogba−ε)f(n) = O(n^{log_ba - \varepsilon})f(n)=O(nlogbaε)ε>0\varepsilon > 0ε>0 ,那么 T(n)=Θ(nlogba)T(n) = \Theta(n^{log_ba})T(n)=Θ(nlogba)

(2)若 f(n)=Θ(nlogba)f(n) = \Theta(n^{log_ba})f(n)=Θ(nlogba) ,那么 T(n)=Θ(nlogbalogn)T(n) = \Theta(n^{log_ba}logn)T(n)=Θ(nlogbalogn)

(3)若 f(n)=Ω(nlogba+ε)f(n) = \Omega(n^{log_ba + \varepsilon})f(n)=Ω(nlogba+ε)ε>0\varepsilon > 0ε>0 ,且对于某个常数 c<1c < 1c<1 和所有充分大的 nnnaf(nb)≤cf(n)af(\frac{n}{b}) \leq cf(n)af(bn)cf(n) ,那么 T(n)=Θ(f(n))T(n) = \Theta(f(n))T(n)=Θ(f(n))

注:摘自百度百科,主定理。

主定理翻译

简单翻译下:

对于递推关系式 T(n)=aT(nb)+f(n)T(n) = aT(\frac{n}{b}) + f(n)T(n)=aT(bn)+f(n)​ 可以分为三种情况讨论 T(n)T(n)T(n)​ 等于多少。

第一种情况

如果 f(n)=O(nlogba−ε)f(n) = O(n^{log_ba - \varepsilon})f(n)=O(nlogbaε)​ ,ε>0\varepsilon > 0ε>0​ ,那么时间复杂度就是 T(n)=O(nlogba)T(n) = O(n^{log_ba})T(n)=O(nlogba)

可能会觉得明明就是 T(n)=Θ(nlogba)T(n) = \Theta(n^{log_ba})T(n)=Θ(nlogba) ,怎么变成 T(n)=O(nlogba)T(n) = O(n^{log_ba})T(n)=O(nlogba)

这个应该是个数学问题,可以简单理解成一切 Θ(f(n))\Theta(f(n))Θ(f(n)) 都是 O(f(n))O(f(n))O(f(n)) ,但是不可以反过来。

这个暂时没想到现成的代码例子(想到了就补上)。就举个抽象的例子吧。

比如 T(n)=4×T(n2)+nT(n) = 4 \times T(\frac{n}{2}) + nT(n)=4×T(2n)+n

我们通过递推式可以得到 a=4,b=2,f(n)=na = 4, b = 2, f(n) = na=4,b=2,f(n)=n

我们先计算下 nlogban^{log_ba}nlogba 显然 nlogba=n2n^{log_ba} = n^2nlogba=n2

f(n)=n=O(n2−1)f(n) = n = O(n^{2 - 1})f(n)=n=O(n21) 因此我们得到 ε=1>0\varepsilon = 1 > 0ε=1>0 符合第一种情况。

T(n)=O(n2)T(n) = O(n^2)T(n)=O(n2) 即时间复杂度式 O(n2)O(n^2)O(n2)

注意:这里的 T(n)T(n)T(n) 是递归函数的执行时间。

第二种情况

如果 f(n)=Θ(nlogba)f(n) = \Theta(n^{log_ba})f(n)=Θ(nlogba) ,那么 T(n)=Θ(nlogbalogn)T(n) = \Theta(n^{log_ba}logn)T(n)=Θ(nlogbalogn)

第一种情况已经讲的很详细了,现在直接举具体的例子-我们熟知的快速排序

主要代码部分:

void quick_sort(int arr[], int low, int high) {if (low >= high) {return;}int mid = split(arr, low, high);quick_sort(arr, low, mid - 1);quick_sort(arr, mid + 1, high);
}

我们设 T(n)T(n)T(n)quick_sort 的执行时间。

T(n)=n+T(n2)+T(n2)=2T(n2)+nT(n) = n + T(\frac{n}{2}) + T(\frac{n}{2}) = 2T(\frac{n}{2}) + nT(n)=n+T(2n)+T(2n)=2T(2n)+n

我们先计算下 nlogban^{log_ba}nlogba​​ 显然 nlogba=n=f(n)n^{log_ba} = n = f(n)nlogba=n=f(n)​ 满足第二种情况。

那么 T(n)=(nlogn)T(n) = (nlogn)T(n)=(nlogn) 即时间复杂度 O(nlogn)O(nlogn)O(nlogn)

第三种情况

如果 f(n)=Ω(nlogba+ε)f(n) = \Omega(n^{log_ba + \varepsilon})f(n)=Ω(nlogba+ε)ε>0\varepsilon > 0ε>0 ,且对于某个常数 c<1c < 1c<1 和所有充分大的 nnnaf(nb)≤cf(n)af(\frac{n}{b}) \leq cf(n)af(bn)cf(n) ,那么 T(n)=Θ(f(n))T(n) = \Theta(f(n))T(n)=Θ(f(n))

举个抽象例子吧 T(n)=2T(n2)+n2T(n) = 2T(\frac{n}{2}) + n^2T(n)=2T(2n)+n2

我们先计算下 nlogban^{log_ba}nlogba​ 显然 nlogba=nn^{log_ba} = nnlogba=n

f(n)=n2=Ω(n1+1)f(n) = n^2 = \Omega(n^{1 + 1})f(n)=n2=Ω(n1+1) 因此我们得到 ε=1>0\varepsilon = 1 > 0ε=1>0 且对于某个常数 c<1c < 1c<1 和所有充分大的 nnnaf(nb)≤cf(n)af(\frac{n}{b}) \leq cf(n)af(bn)cf(n)

对于后面这个 且对于某个常数 c<1c < 1c<1​ 和所有充分大的 nnn​ 有 af(nb)≤cf(n)af(\frac{n}{b}) \leq cf(n)af(bn)cf(n)​​ ​ 只要我们的 c∈(12,1)c \in (\frac{1}{2}, 1)c(21,1)​ 就可以满足 af(nb)≤cf(n)af(\frac{n}{b}) \leq cf(n)af(bn)cf(n)

所以 T(n)=Θ(f(n))T(n) = \Theta(f(n))T(n)=Θ(f(n)) 即是时间复杂度为 O(n2)O(n^2)O(n2)

总结

主定理被描述为解决这种递推的“天下无敌法”(master method),对于我们分析递归的时间复杂度是超级有帮助的。

也并不是所有的递归都可以用主题定理推出来。(比如说汉诺塔问题,斐波那契数列等,他们的递推式显然并不满足主定理的递推式,根据严蔚民版的数据结构上的方法,我们直接暴力递推就好了)

此外,还有一种分析递归时间复杂度的方法叫做 recusion tree 递归树分析法,以后有时间再介绍吧。

http://www.lbrq.cn/news/1575757.html

相关文章:

  • 刷赞网站空间/百度手机助手下载安卓版
  • 建设官方网站需要那些人员/郑州搜索引擎优化
  • 兰州最好的网站开发公司/广州网站排名优化公司
  • 支付招聘网站套餐费用怎么做帐/网上销售渠道
  • 做网站php/搜索引擎优化的目标
  • 佛山建站模板/上海专业seo服务公司
  • 正规的网站建设明细报价表/电脑编程培训学校哪家好
  • 四川省住房和城乡建设厅门户网站/哈尔滨网站优化
  • 招标网站建设方案/网络seo哈尔滨
  • 做网站微信朋友圈应该怎么发/企业如何建立网站
  • 为什么我的网站只有新闻业被收录/网络营销活动方案
  • 组建做网站的团队/百度竞价广告收费标准
  • 做毕业论文的网站/淘宝seo 优化软件
  • 网站建设对用户影响/深圳关键词快速排名
  • 营销型网站的建设软文/电脑培训班多少费用
  • 如何把网站做权重/百度投诉电话24小时
  • 怎么做网站demo/软文代理平台
  • 做网站以后的趋势知乎/网络推广产品要给多少钱
  • 北京 网站设计找时代创信好/百度竞价一个月5000够吗
  • 建设网站前端/腾讯会议多少钱一个月
  • 昆明凡科建站/潍坊网站建设咨询
  • 陶瓷网站策划书/网络营销方案如何写
  • 软件工程主要课程/西安seo盐城
  • 公司网站建设计划书/网站排名优化价格
  • wordpress用户后台插件/seo推广具体做什么
  • 快速做网站的技术/宁波网站推广找哪家
  • 河口建设局网站/百度app营销软件
  • a网站建设/百度最新秒收录方法2021
  • app制作和网站一样吗/seo排名哪家有名
  • 新网站前期seo怎么做/品牌网站建设公司
  • 【超详细!题解|两种做法】洛谷P3196 [HNOI2008] 神奇的国度[MCS算法]
  • Flutter UI Kits by Olayemi Garuba:免费开源的高质量UI组件库
  • Java 工厂方法模式
  • C++11的历史和统一的初始化列表
  • GPT-5 全面解析与最佳实践指南
  • YOLOv6深度解析:实时目标检测的新突破