算法第二章作业

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

在这几节课学了分治法后,学习到了分治法的设计思想是:将一个难以直接解决的大问题分割成一些规模较小的相同问题,以便各个击破,即分而治之,而这些子问题互相独立且与原问题相同;递归地解决这些子问题,然后将各子问题的解合并就可以得到原问题的解。

分治法的基本思想:将一个大问题先分解成若干个规模相当的子问题,然后把子问题的解求出,再然后合并子问题,最终得到原本大问题的解。

从上课老师讲的几个分治法的例子中可以看出,分治法思想设计出的程序一般是递归算法。从我们大一在数据结构就学过的二分搜索算法中,可能是数据结构学的不太认真,在上算法课讲二分搜索算法的时候,有种真正体会到分治法思想的方便性和可行性,就感觉分治法真的是妙啊!

 

2.结对编程情况汇报

结对编程这是我第一次接触的学习方法,即两个人一起想、一起讨论,然后一个人打代码,一个人在旁边看着帮忙纠错之类的,我觉得这个挺好的;通过结对编程的这个方法,在课上打代码的时候,可以先和同伴一起分析题目的意思,然后一起思考题目的含义,再一起把代码一步一步打出来,除此之外,还可以进一步巩固老师上课所讲过的代码;在讨论的时候还可以和同伴分享自己的思路,这样可以有利于让接下来的打代码更顺畅,而且也可以了解别人的思路以及看问题的不同角度;如果遇到不太懂的地方,同伴也会第一时间给我解释为什么要这样做,让我了解得更透彻;所以总的来说,结对编程的情况还是不错的!

posted @ 2020-10-03 19:25  虾呀  阅读(136)  评论(0编辑  收藏  举报