Java一维数组取出其最大值和最小值

时间:2018-11-08
本文章向大家介绍Java一维数组取出其最大值和最小值,需要的朋友可以参考一下

今天在工作中遇到对一个已知的一维数组取出其最大值和最小值,分别用于参与其他运算,废话不多说,直接上代码。

package xhq.text;

public class Maxmin {

static int count =0;

public static void main(String args[]){

// 实例化对象

Maxmin maxmin = new Maxmin();

// 创建数组

int[] array = new int[]{10,23,45,11,757,2,1236,768,1,-9,11111111};

// 取得最小值

int max  = maxmin.getMax(array,0,array.length-1);

int min = maxmin.getMin(array,0,array.length-1);

// 输出

System.out.println("最大值:"+max);

System.out.println("最小值:"+min);

}

// 求最大值

public  int getMax(int[] array,int i, int j){

int Maxx = 0;

int Maxy = 0;

if(i==j){

return Maxx = Maxy = array[j];

}else if(i == (j-1)){

Maxx= array[i];

Maxy = array[j];

return Maxx > Maxy ? Maxx : Maxy;

}else{

int mid = (i+j)/2;

Maxx = getMax(array, i, mid);

Maxy = getMax(array, mid, j);

return Maxx > Maxy ? Maxx:Maxy;

}

}

// 求最小值

public  int getMin(int[] array, int i, int j){

int Minx = 0;

int Miny = 0;

if(i == j){

return Minx = Miny = array[j];

}else if (i==(j-1)){

Minx = array[i];

Miny = array[j];

return Minx > Miny ? Miny:Minx;

}else{

int mid = (i+j)/2;

Minx = getMin(array, i, mid);

Miny = getMin(array, mid, j);

return Minx > Miny?Miny:Minx;

}

}

这样,就得到了想要的结果,java的学习不只是这么简单,但是每一次的总结,都是为了更好的学习,为了给以后的工作和学习带来方便,本人也是新手,大佬勿喷,有不周到的地方,欢迎大家批评指正!