Java冒泡排序随机生成0~100中的20个数,求出最大值和最小值
时间: 2024-09-26 22:04:53 浏览: 36
algorithmPractice:Java中的算法实践
Java中的冒泡排序是一种简单的排序算法,它通过反复交换相邻的未按顺序排列的元素来进行排序。这里我们可以创建一个程序,首先随机生成0到100之间的20个整数,然后使用冒泡排序找到其中的最大值和最小值。
以下是使用Java实现这个功能的一个例子:
```java
import java.util.Random;
import java.util.Arrays;
public class BubbleSortExample {
public static void main(String[] args) {
// 随机数生成
Random random = new Random();
int[] numbers = new int[20];
for (int i = 0; i < numbers.length; i++) {
numbers[i] = random.nextInt(101); // 生成0到100的随机数
}
// 冒泡排序
bubbleSort(numbers);
// 输出最大值和最小值
System.out.println("最大值: " + Arrays.stream(numbers).max().getAsInt());
System.out.println("最小值: " + Arrays.stream(numbers).min().getAsInt());
}
public static void bubbleSort(int[] arr) {
int n = arr.length;
boolean swapped;
for (int i = 0; i < n - 1; i++) {
swapped = false;
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
swapped = true;
}
}
// 如果一轮循环没有发生过交换,则数组已经有序,提前退出
if (!swapped) {
break;
}
}
}
}
```
在这个程序中,我们先使用`Random`类生成数组,然后调用`bubbleSort`函数对数组进行排序。最后,使用`Arrays.stream()`和`max()`、`min()`方法找出并打印最大值和最小值。
阅读全文