gpt4 book ai didi

java - 交换最大值和最小值

转载 作者:行者123 更新时间:2023-12-01 08:53:59 25 4
gpt4 key购买 nike

所以我需要找到 10 个数组中的最大值和最小值并交换最大值和最小值。如果你有多种方法来解决这个问题,那就更好了。

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int [] integers = new int [10];
int max = 0;
int min = 0;
System.out.println("Please enter the 10 integers:");

for ( int counter = 0 ; counter < integers.length ; counter++) {
integers[counter] = scan.nextInt();
} // end for loop

integers[0] = max;
integers[0] = min; // keep getting min as 0

for ( int counter = 0 ; counter < integers.length ; counter++) {
if ( integers[counter] > max ) {
max = integers[counter];
maxIndex = counter;
}
if ( integers[counter] < min) {
min = integers[counter] ;
minIndex = counter;
}

} // end loop

System.out.println(max);
System.out.println(min);

}

最佳答案

您不需要 maxmin (只需索引)。另外,您应该从索引 1 (第二个元素)开始进行比较。最后,在循环之后,您可以交换两个索引处的值。就像,

int maxIndex = 0, minIndex = 0;
for (int counter = 1; counter < integers.length; counter++) {
if (integers[counter] > integers[maxIndex]) {
maxIndex = counter;
}
if (integers[counter] < integers[minIndex]) {
minIndex = counter;
}

} // end loop
int t = integers[maxIndex];
integers[maxIndex] = integers[minIndex];
integers[minIndex] = t;
System.out.println(integers[maxIndex]);
System.out.println(integers[minIndex]);

关于java - 交换最大值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42179404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com