欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java求一个数组中的最大值和最小值

程序员文章站 2022-07-01 23:03:30
原创作品,转载请注明出处:https://www.cnblogs.com/sunshine5683/p/9927186.html 今天在工作中遇到对一个已知的一维数组取出其最大值和最小值,分别用于参与其他运算,废话不多说,直接上代码。 这样,就得到了想要的结果,java的学习不只是这么简单,但是每一 ......

 

原创作品,转载请注明出处:https://www.cnblogs.com/sunshine5683/p/9927186.html

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

  1 package xhq.text;
  2 
  3 public class maxmin {
  4 
  5 static int count =0;
  6 
  7 public static void main(string args[]){
  8 
  9 // 实例化对象
 10 
 11 maxmin maxmin = new maxmin();
 12 
 13 // 创建数组
 14 
 15 int[] array = new int[]{10,23,45,11,757,2,1236,768,1,-9,11111111};
 16 
 17 // 取得最小值
 18 
 19 int max  = maxmin.getmax(array,0,array.length-1);
 20 
 21 int min = maxmin.getmin(array,0,array.length-1);
 22 
 23 // 输出
 24 
 25 system.out.println("最大值:"+max);
 26 
 27 system.out.println("最小值:"+min);
 28 
 29 }
 30 
 31  
 32 
 33 // 求最大值
 34 
 35 public  int getmax(int[] array,int i, int j){
 36 
 37 int maxx = 0;
 38 
 39 int maxy = 0;
 40 
 41 if(i==j){
 42 
 43 return maxx = maxy = array[j];
 44 
 45 }else if(i == (j-1)){
 46 
 47 maxx= array[i];
 48 
 49 maxy = array[j];
 50 
 51 return maxx > maxy ? maxx : maxy;
 52 
 53 }else{
 54 
 55 int mid = (i+j)/2;
 56 
 57 maxx = getmax(array, i, mid);
 58 
 59 maxy = getmax(array, mid, j);
 60 
 61 return maxx > maxy ? maxx:maxy;
 62 
 63 }
 64 
 65 }
 66 
 67 // 求最小值
 68 
 69 public  int getmin(int[] array, int i, int j){
 70 
 71 int minx = 0;
 72 
 73 int miny = 0;
 74 
 75 if(i == j){
 76 
 77 return minx = miny = array[j];
 78 
 79 }else if (i==(j-1)){
 80 
 81 minx = array[i];
 82 
 83 miny = array[j];
 84 
 85 return minx > miny ? miny:minx;
 86 
 87 }else{
 88 
 89 int mid = (i+j)/2;
 90 
 91 minx = getmin(array, i, mid);
 92 
 93 miny = getmin(array, mid, j);
 94 
 95 return minx > miny?miny:minx;
 96 
 97 }
 98 
 99 } 
100 
101 }

 

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