写一段Java冒泡排序
时间: 2023-09-21 10:06:28 浏览: 103
### 回答1:
Java冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。以下是 Java 中的冒泡排序算法实现:public static void bubbleSort(int[] arr){
int n = arr.length;
int temp = 0;
for(int i=0; i < n; i++){
for(int j=1; j < (n-i); j++){
if(arr[j-1] > arr[j]){
temp = arr[j-1];
arr[j-1] = arr[j];
arr[j] = temp;
}
}
}
}
### 回答2:
冒泡排序是一种简单且经典的排序算法,它通过重复地比较相邻的元素并交换位置来排序。以下是使用Java编写的冒泡排序算法的代码示例:
```java
public class BubbleSort {
public static void main(String[] args) {
int[] arr = {5, 2, 8, 1, 3};
// 冒泡排序
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 排序后的结果
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
```
在上述代码中,我们首先定义一个整型数组并初始化。然后使用嵌套的两个for循环进行冒泡排序,外层循环控制总的比较轮数,内层循环则用于比较相邻元素并交换位置。当内层循环结束时,最大的元素已经“冒泡”到了数组的末尾。重复执行这样的操作,直到整个数组排序完成。
最后,我们使用一个for循环来输出排序后的结果。执行上述代码输出的结果是:1 2 3 5 8,表明冒泡排序确实对数组进行了正确的排序。
### 回答3:
冒泡排序是一种简单的排序算法,其基本思想是通过相邻元素之间的比较和交换来进行排序。具体的Java代码如下:
```
public class BubbleSort {
public static void bubbleSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// 交换arr[j]和arr[j + 1]
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
public static void main(String[] args) {
int[] arr = {5, 2, 8, 9, 1};
System.out.println("排序前数组:");
for (int num : arr) {
System.out.print(num + " ");
}
// 调用冒泡排序算法
bubbleSort(arr);
System.out.println("\n排序后数组:");
for (int num : arr) {
System.out.print(num + " ");
}
}
}
```
其中,`bubbleSort`方法用于进行冒泡排序,`main`方法用于测试排序算法。在`main`方法中,我们定义了一个数组`arr`来保存待排序的元素,然后调用`bubbleSort`方法对数组进行排序。最后,打印排序前和排序后的数组。
阅读全文