1.分而治之” 方法是 有效算法 设计中普遍采用的一种技术。 所谓“分而治之” 就是把一个复杂的算法问题按一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解,这种朴素的思想来源于人们生活与工作的经验,也完全适合于技术领域。
2.分而治之的重点:
看是否能够发现重复的子问题
,能否发现大问题存在的循环子结构
,如果发现就把原问题
转化为很简单的小问题
。
是否能划分步骤
(不同步骤不同解决方法),因为单个步骤
往往比整个问题
解决起来要简单很多。
子问题
是否很容易解决
,如果子问题
都解决不了,那么划分
还有啥意义?
比如一个规模为n
的问题,可以划分为1
和 n-1
两个部分,其中1
是易于解决的。而n-1
这个剩余部分可以用相同的划分方式分成1 , n-2
两部分;重复这个过程,最终解决所有问题。
也可以划分成n/2
和n/2
两部分,然后对两个部分
继续划分,最终都会成为一个1
的简单问题
WBS
WBS主要是将一个项目分解成易于管理的几个部分或几个细目,以便确保找出完成项目工作范围所需的所有工作要素。它是一种在项目全范围内分解和定义各层次工作包的方法,WBS按照项目发展的规律,依据一定的原则和规定,进行系统化的、相互关联和协调的层次分解。结构层次越往下层则项目组成部分的定义越详细,WBS最后构成一份层次清晰,可以具体作为组织项目实施的工作依据。
WBS通常是一种面向“成果”的“树”,其最底层是细化后的“可交付成果”,该树组织确定了项目的整个范围。但WBS的形式并不限于“树”状,还有多种形式。
WBS还是以下过程的输入:
项目计划:WBS是范围、成本、进度和风险计划的基础;
状态报告:WBS提供组织对项目的成本、进度状态进行监督的依据;
变更管理:WBS可以使项目经理在合适的控制点,度量、评审、控制变更的发生,评估影响,做出变更控制的决定。