public class Test {
//设计一个方法,给数组进行排序(既能升序,又能降序)
//如果flag为true就升序,为false就降序
public void OrderArray(int[] array,boolean flag){
for(int i=0;i<array.length-1;i++){//一共要进行总长度减 1 趟
for(int j=array.length-1;j>0;j--){//每一趟要对比长度减 1 减 i 次
if (flag && array[j]<array[j-1] || !flag && array[j]>array[j-1]){
int temp = array[j];
array[j] = array[j-1];
array[j-1] = temp;
}
}
}
}
public static void main(String[] args){
Test t = new Test();
int[] a = new int[]{10,1,35,61,89,36,55};
t.OrderArray(a,true);
for(int value:a){
System.out.println(value);
}
}
}
冒泡排序+方法设计
本文详细介绍了冒泡排序的基本原理,并通过Java代码展示了冒泡排序的过程。同时,探讨了如何通过添加标志位来优化冒泡排序,减少不必要的比较,提高排序效率。内容包括冒泡排序的步骤、伪代码、优化思路及完整Java实现。
摘要由CSDN通过智能技术生成