·    master公式(也称主方法)是用来利用分治策略来解决问题经常使用的时间复杂度的分析方法,(补充:分治策略的递归解法还有两个常用的方法叫做代入法和递归树法,以后有机会和亲们再唠),众所周知,分治策略中使用递归来求解问题分为三步走,分别为分解、解决和合并,所以主方法的表现形式:

T [n] = aT[n/b] + f (n)(直接记为T [n] = aT[n/b] + O (N^d))

其中 a >= 1 and b > 1 是常量,其表示的意义是n表示问题的规模,a表示递归的次数也就是生成的子问题数,b表示每次递归是原来的1/b之一个规模,f(n)表示分解和合并所要花费的时间之和。

解法:
①当d<logb a时,时间复杂度为O(n^(logb a))
②当d=logb a时,时间复杂度为O((n^d)*logn)
③当d>logb a时,时间复杂度为O(n^d)

master公式(主方法)相关推荐

  1. 算法笔记-递归算法、递归排序、递归的时间复杂度、master公式(也叫主方法)

    1. 递归排序题 通过递归算法来获取一个数组中的最大值 2. 算法思路 采用递归的思路来进行解题,那么肯定是需要自己调用自己的,这也就是递归,于是考虑怎么自己调用自己呢?我们可以采用二分法来制造递归的 ...

  2. Java黑皮书课后题第6章:6.35(几何:五边形的面积)五边形的面积可以用如下公式计算。编写一个方法,使用下面的方法头返回五边形面积。编写一个主方法,提示用户输入五边形的边,然后显示它的面积

    6.35(几何:五边形的面积)五边形的面积可以用如下公式计算.编写一个方法,使用下面的方法头返回五边形面积.编写一个主方法,提示用户输入五边形的边,然后显示它的面积 题目 题目描述与运行示例 破题 代 ...

  3. git使用报错:fatal: Couldn't find remote ref master的解决方法

    git使用报错:fatal: Couldn't find remote ref master的解决方法 fatal: Couldn't find remote ref master 翻译过来就是:致命 ...

  4. 左神算法课笔记(二):链表、栈和队列、递归Master公式、哈希表、有序表

    单向链表 双向链表 单链表.双链表最简单的面试题 1.单链表和双链表如何反转 package class02;import java.util.ArrayList;public class Code0 ...

  5. mysql master 配置_MySQL双Master配置的方法详解

    刚刚抽空做了一下MYSQL 的主主同步.把步骤写下来,至于会出现的什么问题,以后随时更新.这里我同步的数据库是TEST1.环境描述.主机:192.168.0.231(A)主机:192.168.0.23 ...

  6. 命题公式的主合取范式C语言,命题公式主范式的自动生成与形式输出.pdf

    收稿日期 2006 04 19 作者简介 张会凌 1954 男 甘肃成县人 甘肃联合大学数学与信息学院副教授 主要从事微分几何与计算机方面 的研究 文章编号 1672 691X 2006 05 004 ...

  7. 【算法导论-主定理】用主方法求解递归式 学练结合版

    问题:若某算法的计算时间表示为递推关系式:T(N)=2T(N/2)+NlogN 且 T(1)=1 则该算法的时间复杂度为( ). O(Nsqrt(N)) O(NlogN) O(N(logN)^2) O ...

  8. 递归方程的求解(代入、递归树和主方法)

    递归方程 递归方程之前提到过,就是部分算法在求解的过程中使用了将一个问题划分成几个等价的小问题,在这个过程中,我们就可以列出一个等式. (如归并排序中,将一个大数组拆分成两个小数组分别计算,然后用O( ...

  9. 交换基本数据类型的方法swap,并影响到主方法

    不知道朋友在哪里看到的问题,qq来问我,题目是:在不修改主方法的前提下使用一个方法交换两个int的值,方法如下: public static void main(String[] args) {Int ...

最新文章

  1. pandas read_csv ‘utf-8‘ codec can‘t decode bytes in position 1198-1199: invalid continuation byte解决
  2. emeditor利用书签功能导出匹配结果到新文件
  3. 网络编程中BIO和NIO的区别
  4. elementui table渲染不出来_测试开发不会前端?ElementUI你需要了解一下
  5. NB-IOT(4)---移远NB-IOT BC26模块模组简介和实际应用方向详解
  6. The Wave kernel Signature: A Quantum Mechanical Approach to shape Analysis
  7. python画条形图-用Matplotlib如何绘制条形图、直方图和散点图
  8. C语言入门基础知识有哪些?
  9. TJUSCSST第三次作业
  10. MC9S中断函数编写
  11. oeasy教您玩转linux-010110内容回顾
  12. 【高数】极限运算法则+两个重要极限
  13. net空间一次购买终身使用_西部数码使用指南:如何选择合适的虚拟主机
  14. vtk中的win32窗口
  15. bc vc投资_【融资系列】 VC投资中的常见分期追加投资
  16. css中textarea去掉边框和取消选中后的边框
  17. 离群点(孤立点、异常值)检测方法
  18. 软 RAID 和硬 RAID的比较概览
  19. 高效的产品可视化设计(非原创)
  20. 计算机技术在物理教学中的应用,信息技术在物理教学中的运用案例与感悟

热门文章

  1. linux查看域名解析地址,windows、linux查看域名解析、跟踪路由
  2. Android kernel vulnerability between November 2020 and April 2021
  3. Pygame Event事件模块(详细示例)
  4. 【富芮坤】 RF801xH的rost demo添加 OTA 功能
  5. android 换肤框架原理,换肤框架Android-skin-support 源码分析
  6. java web initservlet_JavaWeb之 Servlet
  7. 女朋友问我 LB 是谁?
  8. pmsm simulink foc 仿真_汽车雷达场景仿真方法的研究
  9. 如何在文章中设置灰色文本框(正文底色)
  10. idea中的maven里面项目有灰色的