Java函数示例:实现冒泡排序算法
发布时间:2023-06-06 16:07:00
冒泡排序算法是一种简单的排序算法,它的基本思想是将待排序的元素两两比较,如果它们的顺序不正确就交换位置,这样一次遍历后最大的元素就会被交换到最后面。然后再从头开始进行相邻元素的比较和交换,直到完成所有元素的排序。
以下是用Java实现冒泡排序算法的示例代码:
public class BubbleSort {
public static void bubbleSort(int[] arr) {
int temp; // 临时变量,用于交换两个元素的值
boolean isSwap; // 标记是否发生交换
for (int i = 0; i < arr.length - 1; i++) { // 外层循环控制排序轮数
isSwap = false; // 每一轮开始前标记为false
for (int j = 0; j < arr.length - 1 - i; j++) { // 内层循环控制比较和交换次数
if (arr[j] > arr[j + 1]) { // 如果前一个元素比后一个大,则交换它们的值
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
isSwap = true; // 标记为发生交换
}
}
if (!isSwap) { // 如果没有发生交换,则说明已经排序完成,可以直接退出循环
break;
}
}
}
public static void main(String[] args) {
int[] arr = {10, 5, 8, 6, 2, 3};
bubbleSort(arr);
for (int num : arr) {
System.out.print(num + " ");
}
}
}
在上面的示例代码中,bubbleSort方法接收一个整型数组作为参数,使用两层循环来进行冒泡排序。外层循环控制排序轮数,内层循环控制比较和交换次数。每次内层循环结束后,根据是否发生了元素交换来判断是否已经完成排序。
在main方法中,我们定义了一个待排序的数组,然后调用bubbleSort方法进行排序。最后使用for循环来遍历数组,将每个元素输出到控制台上。
以上就是用Java实现冒泡排序算法的示例代码,希望能对大家有所帮助。
