第二章作业

1.对分治法思想的体会

分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。

求解某些问题时,由于这些问题要处理的数据相当多,或求解过程相当复杂,使得直接求解法在时间上相当长,或者根本无法直接求出。分治法就是先把它分解成几个子问题,找到求出这几个子问题

的解法后,再找到合适的方法,把它们组合成求整个问题的解法。如果这些子问题还较大,难以解决,可以再把它们分成几个更小的子问题,以此类推,直至可以直接求出解为止。

这样的分治法的确在一定程度上起到了简化问题和整理思路的作用,但在分解问题及合并结果时往往会遇到问题,主要是对问题的本质不够理解及对结构的理解不够清晰。

分治法解题的步骤:

(1)分解,将要解决的问题划分成若干规模较小的同类问题;
 
(2)求解,当子问题划分得足够小时,用较简单的方法解决;
 
(3)合并,按原问题的要求,将子问题的解逐层合并构成原问题的解

 

2.结对编程情况汇报

我和蔡雅旋同学在编程过程中分工较明确,很快整理出了分治法做题的思路,但在分解子问题及合并结果时,由于没有及时整理出结构,遇到了一些困难,经过深刻的讨论之后最终解决了问题。

posted @ 2020-10-09 20:36  我来打题了  阅读(151)  评论(0编辑  收藏  举报