第二章作业

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

2、结合编程情况汇报

二分法,顾名思义就是把一个问题分成两半,减少运算量,加快运算速度,二分法要求数据有序,充分利用了元素间的次序关系,采用分治策略,可以在最坏的情况下用O(logn)完成任务。

在第二道编程题中,开始我并没有吃透题目,不知道事实上求的是逆序对,开始的做法是相邻两两比较,第一次比较从数组0位置开始,第二次是从1开始,不断交替,直至不出现交换为止。

即使我知道用的是二分法,也不知道怎么把二分法运用到这道题中。

最后听老师讲才知道正确的做法应该是,在不断的分半数据,直至数据数为1时停止,再不断合并,合并过程中,通过比较排序,并计算其逆序对数目。

二分是一次的二分,而是多次的二分。怎么把二分法运用到题中,是一个难点。

 

posted @ 2018-10-14 16:49  宇洁  阅读(162)  评论(0编辑  收藏  举报