java数组实现冒泡排序

算法思路:每趟不断将记录两两比较,并按“前小后大”(或“前大后小”)规则交换。

前提:要是顺序存储结构。例如:数组

比较几趟(外循环):N-1趟(N:元素总数)

初始态:21,25,49, 25*,16,  08  (内循环)

趟:21,25,25*,16, 08 , 49 (比较5次)

趟:21,25, 16, 08 ,25*,49 (比较4次)

21,16, 08 ,25, 25*,49 (比较3次)

趟:16,08 ,21, 25, 25*,49 (比较2次)

趟:08,16, 21, 25, 25*,49(比较1次)

代码实现:

方法一:

for (int i = 0; i a[j+1]){
            int temp = 0;
            temp = a[j];
            a[j] = a[j+1];
            a[j+1] = temp;
        }
    }
}

方法二:

//外层循环是递减的
for (int i = a.length-1; i > 0; i--) {
//内层循环是递增的
    count++;
    for (int j = 0; j a[j+1]){
            int temp = 0;
            temp = a[j];
            a[j] = a[j+1];
            a[j+1] = temp;
        }
    }
}

 

你可能感兴趣的:(JAVA)