2.3 算法设计
分治法:将复杂问题分解为与原问题相似的简单的问题,递归解决这些子问题!
合并排序的思想就是将n问题分解为n/2子问题,直到分解的子问题为1时递归结束。然后将需要将分解后的排好顺序的子数组合并。
其中在合并数组中,新建的两个动态数组中,哨兵元素的设置非常重要,如果没有哨兵元素,遍历数组可能会出问题~!
运行结果如下:
分治法:将复杂问题分解为与原问题相似的简单的问题,递归解决这些子问题!
合并排序的思想就是将n问题分解为n/2子问题,直到分解的子问题为1时递归结束。然后将需要将分解后的排好顺序的子数组合并。
其中在合并数组中,新建的两个动态数组中,哨兵元素的设置非常重要,如果没有哨兵元素,遍历数组可能会出问题~!
运行结果如下: