自顶向下,逐步求精
2017-11-26 13:22
225 查看
自顶向下,逐步求精
分治法是计算机科学中很重要的一种思想。英文为Divide and Conquer,直译即为分治,或者分而治之。直观的理解就是将一个大而难的问题分解为一些小而易的问题,先解决这些易于解决的小问题,再合并这些小问题的解(合并可以是分别求出小问题的解再合并,或者是直接将相同的小问题合并只求解一次),从而得到大问题的解。需要注意的是小问题必须和大问题是同一个类型的问题,或者说解法相同,这样才可以递归求解。我们发现,这种实际上是自顶向下地分解问题。自顶向下
是将复杂、大的问题划分为小问题,找出问题的关键、重点所在,然后用精确的思维定性、定量地去描述问题。逐步求精
是将现实世界的问题经抽象转化为逻辑空间或求解空间的问题。复杂问题经抽象化处理变为相对比较简单的问题。经若干步抽象(精化)处理,最后到求解域中只是比较简单的编程问题。抽象过程
实例
接下来将以洗衣机为例讲述这种方法首先,洗衣的大致过程
接着,逐步求精
优点
1.程序的层次分明、结构清晰2. 便于集体开发程序。对于大型程序来讲,可以每组负责一个模块(一个子部分),在一个组内又可以每个人负责一个子模块(更小的子部分)等等。而各个模块之间以及各个子模块之间相对独立,互相之间没有制约,各个模块的负责人员可以独立的进行各自的程序设计。
3. 便于调试。若程序有错误,可以很容易的将错误局部于某一子部分,找出错误,同时每一部分的错误是独立的,也不至于影响其它的部分。
相关文章推荐