A. java求数组的最大值
public class B {
public static void main(String[] args) {
int[] array = {10,29,18,30,43,69};
int max = 0;//初始最大值
//遍历循环数组
for (int i = 0; i < array.length; i++) {
if(maxIndex < array[i]){
maxIndex = array[i];
}
}
System.out.println("最大值:"+max);
}
}
如有帮助请采纳(不懂请提问),可以看我主页,欢迎来交流学习;
B. java求最大值和最小值
int[]data={1,2,3,4,5,6};
intmaxIdx,minIdx;
maxIdx=0;
minIdx=0;
for(inti=1;i<data.length;i++){
if(data[maxIdx]<data[i])maxIdx=i;
if(data[minIdx]>data[i])minIdx=i;
}
C. java如何求最大值
测试结果为
请输入第1个数
2
请输入第2个数
3
请输入第3个数
4
请输入第4个数
5
请输入第5个数
6
请输入第6个数
7
请输入第7个数
7
请输入第8个数
8
请输入第9个数
9
请输入第10个数
423
最大数为:423
import java.util.Scanner;
public class MaxNum {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int max = Integer.MIN_VALUE;
for(int i = 1; i <= 10; i++) {
System.out.println("请输入第" + i + "个数");
int num = in.nextInt();
if(num >= max) max = num;
}
System.out.println("最大数为:" + max);
}
}
D. java中如何取得一组数字的最大值
以下是Java中的List,如果是数组,大同小异
packagecom;
importjava.util.ArrayList;
importjava.util.List;
publicclassTest{
publicstaticvoidmain(String[]args){
//初始化数组
List<Integer>nums=newArrayList<Integer>();
nums.add(2);
nums.add(5);
nums.add(10);
nums.add(6);
nums.add(3);
//设置最大值Max
intMax=Collections.max(nums);
System.out.println("Max="+Max);
}
}
E. java中怎么获取int的最大值
Integer.MAX_VALUE 获取int类型的最大值
Integer.MIN_VALUE 获取int类型的最小值,其他基本数据类型同理
F. java编写程序,求若干个求最大值的方法Max……
import java.util.Arrays;
public class test {
public static int Max(int a ,int b ,int c ){
return Math.max(Math.max(a, b), c);
}
public static float Max(float a ,float b ,float c ){
return Math.max(Math.max(a, b), c);
}
public static double Max(double a ,double b ,double c ){
return Math.max(Math.max(a, b), c);
}
public static int Max(String a ,String b ,String c ){
Integer a1 = new Integer(a);
Integer a2 = new Integer(b);
Integer a3 = new Integer(c);
return Math.max(Math.max(a1, a2), a3);
}
public static int Max(int[] arr){
Arrays.sort(arr);
return arr[arr.length-1];
}
}
使用的是方法的重载。
G. JAVA 求输入的三个整数的最大值
有,更简短的写法就是把你那个
for(int a=0;a<3;a++)
{
b[a] = (int) in.nextInt();
System.out.println("输入的数字是"+b[a]);
}
去掉,因为别人在输入的时候已经知道输入的是什么了,没有必要再输出一遍
H. 用java编写找最大值函数
你好,好多种办法。我给你写几种经典的排序吧,最大值就在第一个(倒序)或者最后一个(从小到大)。
首先方便输出,定义一个工具类
public class PrintUtil {
public static void print(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i] + " ");
}
System.out.println();
}
}
第一种:冒泡排序
public class BubblingSort {
/*
* 算法思想->升序
* 1、比较相邻两项,若为逆序,则交换
* 2、每次比较的结果就是将最大项浮到数组尾
* 算法分析:
* ------- 最坏情况 --------
* 比较次数:(n-1) + (n-2) + ... + 1 = n*(n-1)/2
* 交换次数:[(n-1) + (n-2) + ... + 1]*3 = 3*n*(n-1)/2
* 所以n元选择排序需要的主要操作次数是:n*(n-1)/2+3*n*(n-1)/2=2*n*n-2*n
* 结论:O(n*n)阶
* ------- 最好情况 --------
* 比较次数:n-1
* 交换次数:0
* 所以n元选择排序需要的主要操作次数是:n-1
* 结论:O(n)阶
*/
public void bubbingSort(int[] array){
int len = array.length ;
for(int i=len-1;i>0;i--){
boolean flag = false ;
for(int j=0;j<i;j++){
if(array[j]>array[j+1]){
int temp = array[j] ;
array[j] = array[j+1] ;
array[j+1] = temp ;
flag = true ;
}
}
if(!flag){
break ;
}
System.out.print("第" + (5-i) + "趟的排序结果为:" );
PrintUtil.print(array) ;
}
}
public static void main(String[] args) {
int[] array = {29,10,14,37,13} ;
// int[] array = {37,29,14,13,10} ; //最差情况
// int[] array = {10,13,14,29,37} ; //最好情况
BubblingSort ss = new BubblingSort();
ss.bubbingSort(array);
PrintUtil.print(array) ;
}
}
第二种:插入排序
public class InsertSort {
/*
* 算法思想->升序
* 1、将一个数组的元素分成两部分,前半部分为有序数组
* 2、每一次取后半部分的第一个元素,将该元素插入到有序数组中
* 算法分析:
* ------- 最坏情况 --------
* 比较次数:1 + 2 + ... + (n-1) = n*(n-1)/2
* 移动次数:
* 内部循环:1 + 2 + ... + (n-1) = n*(n-1)/2
* 外部循环:2*(n-1) OR 2
* 所以n元选择排序需要的主要操作次数是:n*(n-1)/2 + n*(n-1)/2 + 2*(n-1) = n*n+n-2
* 结论:O(n*n)阶
*/
public void insertSort(int[] array){
for (int i = 1; i < array.length; i++) {
int temp = array[i] ;
for(int j= i-1; j >= 0; j--){
if(temp > array[j])
break ;
if(temp < array[j]){
array[j+1] = array[j] ;
if( j != 0 && temp > array[j-1]){
array[j] = temp ;
break ;
}
if(j == 0){
array[0] = temp ;
}
}
}
System.out.print("第" + i + "趟的排序结果为:" );
PrintUtil.print(array) ;
}
}
public static void main(String[] args) {
int[] array = {29,10,14,37,13} ;
InsertSort ss = new InsertSort();
ss.insertSort(array);
PrintUtil.print(array) ;
}
}
第三种:选择排序
public class SelectSort {
/*
* 算法思想->升序
* 1、找到最大的元素,与最后一个元素交换
* 2、除去最后一个元素外,在数组的剩余项中查找最大项,并与倒数第二个元素交换
*
* 算法分析:
* 比较次数:n*(n-1)/2
* 交换次数:3*(n-1)
* 所以n元选择排序需要的主要操作次数是:n*(n-1)/2+3*(n-1)=n*n/2+5*n-3
* 结论:O(n*n)阶
*/
public void selectSort(int[] array){
int len = array.length ; //记录数组的长度
int scope = len ; //遍历范围
for(int i=0;i<len-1;i++){
int max = array[0] ; //数组的最大元素
int index = 0 ; //记录最大元素的下标
for(int j=1;j<scope;j++){
if(max < array[j]){
max = array[j] ;
index = j ;
}
}
int temp = array[scope-1] ;
array[scope-1] = array[index] ;
array[index] = temp ;
System.out.print("第" + (i+1) + "趟的排序结果为:" );
PrintUtil.print(array) ;
scope -- ;
}
}
public static void main(String[] args) {
int[] array = {29,10,14,37,13} ;
SelectSort ss = new SelectSort();
ss.selectSort(array);
PrintUtil.print(array) ;
}
}
其余的都比较复杂就不给你多写了。
其实很简单的算法,就是遍历这N个数,没遇到一个大的值,就去赋给max,最后输出max,但是这个没什么技术含量,所以在最后说明下。
I. java 求一组数的最大值
你的for for(int i =1; i<arr.length;i++);这个分号是怎么回事。去掉
J. java取数组中的最大值
先假设第一个数是最大的,设成max的值,然后拿它依次和后面的数去比,如果遇到比它大的,那就把max的值换成这个较大数,直到遍历完了,max的值就是数组中的最大值喽。