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

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

 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的学习不只是这么简单,但是每一次的总结,都是为了更好的学习,为了给以后的工作和学习带来方便,本人也是新手,大佬勿喷,有不周到的地方,欢迎大家批评指正!

Java求一个数组中的最大值和最小值的更多相关文章

  1. C#获取一个数组中的最大值、最小值、平均值

    C#获取一个数组中的最大值.最小值.平均值 1.给出一个数组 ,,,,,-,,,,}; 2.数组Array自带方法 本身是直接可以调用Min(),Max(),Average()方法来求出 最小值.最大 ...

  2. Jsの数组练习-求一组数中的最大值和最小值,以及所在位置

    要求:求一组数中的最大值和最小值,以及所在位置 代码实现: <!DOCTYPE html> <html lang="en"> <head> &l ...

  3. 如何使用Math对象快速计算数组中的最大值或最小值

    Math 对象下包含 min() 和 max() 方法 用于确定一组数值中的最大值和最小值.这两个方法都可以接收任意多个数值参数. var max = Math.max(1,2,3,4,5,6); c ...

  4. Javascript获取数组中的最大值和最小值的方法汇总

    比较数组中数值的大小是比较常见的操作,下面同本文给大家分享四种放哪广发获取数组中最大值和最小值,对此感兴趣的朋友一起学习吧   比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用 ...

  5. 求一个number数组中的最大值和最小值的差

    <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content ...

  6. 求一个数组中最小的K个数

    方法1:先对数组进行排序,然后遍历前K个数,此时时间复杂度为O(nlgn); 方法2:维护一个容量为K的最大堆(<算法导论>第6章),然后从第K+1个元素开始遍历,和堆中的最大元素比较,如 ...

  7. PHP获取以为数组中的最大值和最小值

    1.PHP获取一维数组中的最大值 <?php $a=array('1','3','55','99'); $pos = array_search(max($a), $a); echo $a[$po ...

  8. js 取得数组中的最大值和最小值(含多维数组)

    转自:http://www.dewen.org/q/433 方法一: var a=[1,2,3,5]; alert(Math.max.apply(null, a));//最大值 alert(Math. ...

  9. 数组中的最大值以及最小值的位置变换的问题(C++)

    将一个5×5的数组中的最大值放到数组的中心位置 分析:遍历数组,找到最大的元素,然后将该元素与中心位置的元素交换位置 #include<iostream> #include <std ...

随机推荐

  1. angular核心原理解析3:指令的执行过程

    指令的执行过程分析. 我们知道指令的执行分两个阶段,一个是compile,一个是link. 我们可以在指令中自定义compile和link. 首先,我们来讲解如何自定义link函数 举个例子: < ...

  2. python 第一天学习(画个正方体)

    import turtleturtle.goto(200,0)turtle.goto(200,200)turtle.goto(0,200)turtle.goto(0,0)turtle.penup()t ...

  3. docker微服务部署之:二、搭建文章微服务项目

    docker微服务部署之:一,搭建Eureka微服务项目 一.新增demo_article模块,并编写代码 右键demo_parent->new->Module->Maven,选择M ...

  4. 初始linux系统--ubuntu

    ubuntu操作系统  1. Linux系统组成 Linux内核软件程序用于实现CPU和内存分配进程调度设备驱动等核心操作,以面向硬件为主 外围程序面向用户为主,包括分析用户指令的解释器网络服务程序图 ...

  5. IDEA + SpringBoot + Java搭建Web项目

    打开IDEA,选择Spring Initializr,默认配置,点击Next  添写GAV.(group.Artifact.Version)  选择Spring Boot版本,这里选2.1.4稳定 ...

  6. sparksql连接mysql

    1.方法1:分别将两张表中的数据加载为DataFrame /* * 方法1:分别将两张表中的数据加载为DataFrame * */ /* Map<String,String> option ...

  7. Go语言容器

    Map 是一种无序的键值对的集合.Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值. Map 是一种集合,所以我们可以像迭代数组和切片那样迭代它.不过,Map 是无 ...

  8. (五)Audio子系统之AudioRecord.stop

    在上一篇文章<(四)Audio子系统之AudioRecord.read>中已经介绍了AudioRecord如何获取音频数据,接下来,继续分析AudioRecord方法中的stop的实现 函 ...

  9. SQL LIKE 通配符随笔

    通配符 说明 _    与任意单字符匹配 %    与包含一个或多个字符的字符串匹配 [ ]  与特定范围(例如,[a-f])或特定集(例如,[abcdef])中的任意单字符匹配. [^]  与特定范 ...

  10. echart 时间轴、以及y轴值过大但是变化不大显示感觉不出变化的问题+弹出框拖动div事件

    1.时间轴 echart 提供了一种图表,如果x轴是一个时间范围,并且是连续的,如果用传统的数据驱动会很慢,所以用时间轴的方式 function initCurve(_data){ var resul ...