分治法的思想:
将求出的小规模的问题的解合并为一个更大规模的问题的解,自底向上逐步求出原来问题的解。
分治法的设计思想,将一个难以直接解决的大问题,分割成一些规模较小的相同问题,从小的问题一个个解决,分而治之。
求解一组数组元素的最大值和最小值,传统的方法,我们可以使用遍历或者最简单的排序方法来实现,但是时间复杂度非常高,介于降低时间复杂度,我们可以采用分治法思想求出最大值和最小值。
步骤:
先求出左半部分的最大值最小值,再求出右半部分的最大值和最小值,然后把左右两部分的最大值和最小值合起来,求出最终的最大值和最小值。
这次使用Java,利用分治法实现一组数组元素的最大值和最小值。
import java.util.Scanner;
public class Test2 {
public static void max_min(int []a,int left,int right,int []maxnum,int