永发信息网

java最大最小值算法 已给出8个数

答案:4  悬赏:70  手机版
解决时间 2021-03-19 20:18
  • 提问者网友:精神病院里
  • 2021-03-19 12:43
java最大最小值算法 已给出8个数
最佳答案
  • 五星知识达人网友:鸠书
  • 2021-03-19 14:08
可以使用冒泡排序,最值在两端(得到最大值和最小值),多少个数字都不是问题
 int score[] = {20, 50, 15, 66, 35, 40, 80, 67};  
          for (int i = 0; i < score.length -1; i++){
              for(int j = 0 ;j < score.length - i - 1; j++){
                  if(score[j] < score[j + 1]){ 
                      int temp = score[j];  
                      score[j] = score[j + 1];  
                      score[j + 1] = temp;  
                  }  
              }              
              System.out.print("第" + (i + 1) + "次排序结果:");  
              for(int a = 0; a < score.length; a++){  
                  System.out.print(score[a] + " ");  
              }  
              System.out.println("");  
          }  
              System.out.print("最终排序结果:");  
              for(int a = 0; a < score.length; a++){  
                  System.out.print(score[a] + " ");  
         }  
              System.out.println();
              System.out.println("最大值:"+score[0]);
              System.out.println("最小值:"+score[score.length-1]);
全部回答
  • 1楼网友:轻雾山林
  • 2021-03-19 16:17
看看下面两个类的源码(实现的是排序,比找最大、最小还复杂)
java.util.Collections.sort()
java.util.Arrays.sort()
  • 2楼网友:第四晚心情
  • 2021-03-19 15:07
可以简单的做一个升序的冒泡排序,排完后,最后一个是最大值,
第一个是最小值。
也可以定义两个变量,max和min,分别两数进行比较,把较大的给
max较小的给min,全部比完,就得出最大值和最小值了。追问已给出8个数(里面有整数和小数)
能写下程序吗 谢谢已给出8个数(里面有整数和小数)
能写下程序吗 谢谢
  • 3楼网友:平生事
  • 2021-03-19 14:59
用冒泡排序,只排第一次,就可以得出最大值/最小值,不用整个排完。追问已给出8个数(里面有整数和小数)
能写下程序吗 谢谢追答public class Sort {
public static void main(String[] args) {
Sort s=new Sort();
double[] d={1,1.5,2,3.5,5,7,8,2.1}; //这数组里面的8个数你可以自己修改,改成你老师给你的那8个数
System.out.println("最大值是:"+s.getMax(d));
System.out.println("最小值是:"+s.getMin(d));
}
public double getMax(double[] d){
for(int i=0;iif(d[i]>d[i+1]){
double temp=0;
temp=d[i];
d[i]=d[i+1];
d[i+1]=temp;
}
}
return d[d.length-1];
}
public double getMin(double[] d){
for(int i=0;iif(d[i]double temp=0;
temp=d[i];
d[i]=d[i+1];
d[i+1]=temp;
}
}
return d[d.length-1];
}
}
以下是输出结果:
-------------------------------------------------------------------
最大值是:8.0
最小值是:1.0
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯