数组的冒泡排序
package OOP; import java.util.Arrays; //构造器 public class test { static int[] a={1,48,12,97,24,-5};//冒泡排序 public static void main(String[] args) { for (int i = 0; i < a.length; i++) { for (int j = 0; j < a.length-1-i; j++) {//j<a.length-1-i代表每次将最大的数沉到最右面之后 //最右边的数字不用在参与下一趟排序,因此减去i的值,减少了代码运算量。 if (a[j]>a[j+1]){//调换位置 int temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } // System.out.println(Arrays.toString(a)); } System.out.println(Arrays.toString(a)); } } }
注意每一趟循环后减去i的值,
浙公网安备 33010602011771号