酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

java 冒泡算法

好的,冒泡排序是一种简单的排序算法,通过重复遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就交换它们的位置。这个过程会重复进行,直到没有需要再交换的元素为止。 这里是一个用 Java 实现的冒泡排序示例: ```java public class BubbleSort { public static void main(String[] args) { int[] array = {64, 34, 25, 12, 22, 11, 90}; bubbleSort(array); System.out.println("排序后的数组:"); for (int value : array) { System.out.print(value + " "); } } // 冒泡排序方法 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]) { // 交换 arr[j] 和 arr[j + 1] int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; swapped = true; } } // 如果在这一轮中没有发生交换,说明数组已经有序,可以提前结束 if (!swapped) break; } } } ``` ### 需要注意的逻辑点: 1. **优化提前终止**:如果在某一轮遍历中没有发生任何交换,说明数组已经有序,可以直接退出循环,避免不必要的比较。 2. **内层循环范围**:每次外层循环后,最大的元素会被移动到数组的末尾,因此内层循环的范围可以逐渐减少。 3. **稳定性**:冒泡排序是稳定的排序算法,即相等的元素在排序前后不会改变相对位置。 希望这段代码对你有帮助!如果有其他问题或需要进一步解释,请随时告诉我。 [2024-11-26 16:53:55 | AI写代码神器 | 446点数解答]

相关提问