----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
浅谈冒泡排序之学习
计算机基础排序算法特别多,在不考虑空间与时间复杂度的情况下,其实冒泡排序是十分经典的排序算法
冒泡排序的思路是一次比较相邻的两个数,大数放在后面。第一趟时,比较第一个和第二个数,大数放前,小数放后,然后比较第二个和第三个,也是大数在前,小数在后,一直比较到最后一个数,还是大数放前,小数放后,第一趟完毕。第二趟还是从第一个开始,重复上述过程,直至倒数第二个(倒数第一个已经在第一趟比较出来)。然后重复上述过程,只占全部排序结束。
需要注意的是二层循环内temp的声明和赋值。
package itheima;
public class BubbleSort {
public static void main(String[] args) {
int arr[] = { 33, 54, 23, 68, 9, 4555, 2, 77 };// 声明一个数组,就是要排序的数
for (int i = 0; i < arr.length - 1; i++) { // 最多做n-1趟排序
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] < arr[j + 1]) { // 把小的值交换到后面
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
System.out.print("排序结果为:");
for (int a = 0; a < arr.length; a++) {
System.out.print(arr[a] + "\t");
}
}
以上为本人学习过程中的一些感悟,欢迎提出不同意见。