java小白求大神帮我分析一下,底层怎么算法的?

Java-小白_ 2019-03-18 05:11:43
public class ArrayOperateDemo { static int getMax() { int max = nums[0];//假设nums [ 0 ] 第一个元素是最大值 for(int index = 0;index < nums.length; index++) { //如果大于max,则把nums[index]值存储到max if(nums[index] > max) { max = nums[index]; } } return max; } public static void main(String [ ] args) { int [ ] nums = new int [ ] {1,3,-2,7,10}; System.out.println(ArrayOperateDemo.getMax(nums)); } }
...全文
51 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
泯泯泯 2019-03-18
  • 打赏
  • 举报
回复
简单来讲就是找数组里最大的那个数,就好比一堆人排成一列比身高,第一个人站出来,以第一个为基准,第一个和第二个比,如果第二个人比第一个人高,那么第一个人回到队伍,第二个人站出来,如果第二个人比第一个人矮,那么继续第三个人和第一个人比,以此类推,最后比完在队伍外的就是那个最高的
stacksoverflow 2019-03-18
  • 打赏
  • 举报
回复
引用 3 楼 qq_44794793 的回复:
[quote=引用 2 楼 stacksoverflow 的回复:]没看明白要分析啥, 从头到尾遍历一个非排序数组,那个值比当前值大,就把当前值变成这个值。 这样最后返回的就是数组中最大的值。
因为用手机发布的,不好写,意思是if里面那个max的值,是不是一开始nums[0]赋值给max,然后一直不变?[/quote] 如果nums[0]后面有比max大的(比如nums[1]),就把这个值(比如nums[1])赋给max 最终max里存的是数组中最大的值。
Java-小白_ 2019-03-18
  • 打赏
  • 举报
回复
引用 1 楼 wang_1997_xu 的回复:
遍历数组,比较元素的值,大就交换
nums[0]赋值给max变量,然后if里面max的值一直不变?
Java-小白_ 2019-03-18
  • 打赏
  • 举报
回复
引用 2 楼 stacksoverflow 的回复:
没看明白要分析啥, 从头到尾遍历一个非排序数组,那个值比当前值大,就把当前值变成这个值。 这样最后返回的就是数组中最大的值。
因为用手机发布的,不好写,意思是if里面那个max的值,是不是一开始nums[0]赋值给max,然后一直不变?
stacksoverflow 2019-03-18
  • 打赏
  • 举报
回复
没看明白要分析啥, 从头到尾遍历一个非排序数组,那个值比当前值大,就把当前值变成这个值。 这样最后返回的就是数组中最大的值。
Hygge_wx 2019-03-18
  • 打赏
  • 举报
回复
遍历数组,比较元素的值,大就交换

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧