首页 > 其他 > 详细

用递归的方法求数组中的最大数

时间:2014-06-28 16:17:16      阅读:342      评论:0      收藏:0      [点我收藏+]

思路: 
得到全部5个中最大的数--> 比较第5个数与前四个中最大数的值-> 得到前四个中最大的数--> 比较第四个数与前三个中最大数的值-->得到前三个数中的最大值-->比较第三个数与前两个中最大数的值-->得到前两个数中最大的值-->比较第二个数与第一个数中的最大值

但实际运算是从最右端往左端逐步(和上面的执行路径正好相反)比较的。

 

 1 package test;
 2 
 3 public class ArrayMax {
 4 
 5     public static void main(String[] args) {
 6         // TODO Auto-generated method stub
 7           int x[] = {10, -2, 4, 49, 49, 100, 23, 4};
 8           System.out.println("max:" +max(x, x.length));
 9     }
10     
11     static int max(int x[], int n)
12     {
13         if (n == 1)
14         {
15             return x[0];
16         }
17         else
18         {
19             if (x[n - 1] > max(x, n - 1))
20             {
21                 return x[n - 1];
22             }
23             else
24             {
25                 return max(x, n - 1);
26             }
27         }
28     }
29 
30 }

 

 

 

用递归的方法求数组中的最大数,布布扣,bubuko.com

用递归的方法求数组中的最大数

原文:http://www.cnblogs.com/isoftware/p/3798140.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!