java 数组求极值题目_数组的求极值

前几篇我们知道了如何简单的使用数组

这一篇比较重要的是数组中求极值的算法

顾名思义极值其实就是两个东西:最大值和最小值

下面我们上手代码:

b95a0757508d69f74aae3fde9f5493f9.png

输出结果:

30b244f23fd20b63c311a6cd875dc879.png

其实这里面包含的逻辑其实挺简单的

我们看到这个方法

1.首先把索引为0的值,默认为最大值

2.开始for循环,然而这有很奇怪的一点就是这个for循环是从1开始的

那么是不是索引为0的值就不会进入到这个循环里面了?

错错错!其实这就是我们第一步的目的

假如从0开始索引0和索引0比较,呃,自己比较自己

你说谁大,怎么交换所以我们的循环就从1开始啦

3.判断循环条件 : i = 1 小于数组长度满足循环条件执行循环的

4.执行循环体(当前i为1):简单点就是这个意思

假如 2(array[i]) 大于  1(maxResult)

就把当前最大值改为2(maxResult = array[i] )

i++

5.来到第三步直到循环结束

6.返回结果

这个方法最核心的就是那个if判断以及里面的交换

以上就是一个数组求最大值的方法

那么最小值呢?

其实更简单,只要在求最大值的方法改一个地方就行了

没错就是把if里面的大于换成小于

37a82585b6c7ce9db52a262bc015499c.png

其实这就是从最大值哪里复制过来的代码,只不过改了一点东西

其实求最小值和求最大值的思路都是一样的,不过是代码有点不一样而已

总的来说就是这样:

ac8fd90d9217fb0d78404f2a8daad2b7.png

好了数组求极值这个简单的操作就到这里了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值