算法第二章作业

1、请谈一下你对分治法思想的体会

在大一学年中,我仅是了解分治法,并不了解分治法的原理,在大二的算法课上对分治法有了深一层的了解。分治法简单来说就是Divine—>Conquer—>Combine。将一个问题分拆成几个小问题,逐一对小问题求解后合并结果。

当我们要解决的问题规模比较大时,很难用普通的方法去解决问题,而且时间复杂度也较大。这时候就可以运用分治法。

拿归并排序的算法思路作为一个参考:算法第二章作业_第1张图片,一个包含n个元素序列的排序可以分成两个包含n/2个元素的子序列,再分成四包含n/4个元素的子序列....直到子序列只含2个元素为止。

 

运用分治法的思路必须非常清晰,同时要把握好其中的数学逻辑,我感觉我还需要投入更多的时间与精力才能初步入门分治法。

2、结对编程情况汇报

结对编程对于我这种写代码能力较弱的人还是比较有好处的,能够参考到同伴打的代码中优秀的算法与标准的代码格式,对以后的编程也有很大的帮助。但是因为个人代码风格不一样,有时候会看不懂同伴的代码。希望能够学得更多,在吸收同伴代码的优点同时,提出自己的意见,为完善代码出一份力。

 

你可能感兴趣的:(算法第二章作业)