用Java实现冒泡排序算法,并分析算法的时间复杂度,写出完整的代码,包括类名
时间: 2024-03-24 12:41:36 浏览: 87
好的,下面是Java实现冒泡排序算法的代码,类名为BubbleSort:
```java
public class BubbleSort {
public static void main(String[] args) {
int[] arr = { 64, 34, 25, 12, 22, 11, 90 };
int n = arr.length;
bubbleSort(arr);
System.out.println("Sorted array: ");
printArray(arr);
}
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]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
public static void printArray(int[] arr) {
int n = arr.length;
for (int i = 0; i < n; ++i)
System.out.print(arr[i] + " ");
System.out.println();
}
}
```
这段代码中,我们定义了一个BubbleSort类,其中包含了两个方法:bubbleSort和printArray。
bubbleSort方法是冒泡排序算法的主要部分,它通过比较相邻的元素,并将较大的元素移动到数组的末尾。在每次排序中,我们比较相邻的元素,并将较大的元素交换到数组的后面。这样,每次排序后,数组中最后的元素都是已经排序好的。
printArray方法用于输出排序后的数组。
冒泡排序算法的时间复杂度为O(n^2)。
阅读全文