我是靠谱客的博主 陶醉煎蛋,最近开发中收集的这篇文章主要介绍c语言分治法求数组最大值,分治法求数组的最小值和最大值,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

**

*

* 分治法求数组的最小值和最大值

*/

import java.util.Arrays;

public class MinAndMaxArray {

public static void main(String[] args) {

int arr[] = { -2, -9, 0, 5, 2 };

int result[] = new int[2];

result = minMax(arr, 0, arr.length - 1);

System.out.println(Arrays.toString(result));

}

public static int[] minMax(int[] arr, int l, int r) {

int min = 0;

int max = 0;

if (l == r) {

min = arr[l];

max = arr[l];

} else if (l + 1 == r) {

if (arr[l] < arr[r]) {

min = arr[l];

max = arr[r];

} else {

min = arr[r];

max = arr[l];

}

} else {

int mid = (l + r) / 2;

int[] preHalf = minMax(arr, l, mid);

int[] postHalf = minMax(arr, mid + 1, r);

min = preHalf[0] < postHalf[0] ? preHalf[0] : postHalf[0];

max = preHalf[1] > postHalf[1] ? preHalf[1] : postHalf[1];

}

return new int[] { min, max };

}

}

运行结果:

[-9, 5]

最后

以上就是陶醉煎蛋为你收集整理的c语言分治法求数组最大值,分治法求数组的最小值和最大值的全部内容,希望文章能够帮你解决c语言分治法求数组最大值,分治法求数组的最小值和最大值所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部