当前位置: 代码迷 >> 综合 >> java 冒泡排序_优化排序 尚学堂
  详细解决方案

java 冒泡排序_优化排序 尚学堂

热度:7   发布时间:2024-01-30 05:16:26.0

Java实现冒泡排序,如果其中有一次遍历没有交换过元素,那么说明已经都排好了,不用再继续遍历下去了,可以加个flag进行判断:

import java.util.Arrays;public class Test{public static void main(String[] args) {int[] values = { 3, 1, 6, 2, 9, 0, 7, 4, 5, 8 };bubbleSort(values);System.out.println(Arrays.toString(values));}public static void bubbleSort(int[] values) {int temp;for (int i = 0; i < values.length; i++) {boolean flag = false;for (int j = 0; j < values.length - 1 - i; j++) {if (values[j] > values[j + 1]) {temp = values[j];values[j] = values[j + 1];values[j + 1] = temp;flag = true;}if(flag) {break;}}}}
}

输出结果:

[0, 1, 2, 3, 6, 9, 7, 4, 5, 8]