分治法学习
- 算法描述
分治思想:先选取基准对数组划分,将比基准小的放左边、大的放右边,得到基准的最终位置。对比基准位置与k:若基准就是第k小元素直接返回;若k在左侧,则只递归左半部分查找;若k在右侧,则递归右半部分查找,缩减k值,直到找到答案。
先将问题拆分成多个小问题,各自解答后汇总得出最后答案。 - 复杂度
最好时间复杂度 O(n),每次划分均匀,总遍历量为线性;
最坏时间复杂度 O(n²),每次划分都不均衡。 - 分治法体会
经过这段时间的学习,我认为分治法可以将大问题拆成同类型的小问题逐个解决。不必处理全部子问题,只需要求解目标所在那一部分,以此减少计算量;但算法效率受划分好坏影响很大。

浙公网安备 33010602011771号