java排序算法之冒泡排序

排序算法之冒泡排序

//所谓冒泡排序,其原理就是依次将第一个数与后一个数比较,数字大的就后移,第一次排序后,最后一个数字就是最大的树,然后再依次将第二个数与后一个数比较,数字大的后裔,第二次排序后,倒数第二个数字就是第二大的数了,后面逻辑一样。

package cn.ycl.dataStructures.sort;
import java.util.Arrays;
//冒泡排序
public class BubbleSort {
	public static void main(String[] args) {
		int array[] = { 3, 9, -1, 10, 20 };
		int temp = 0;// 中间变量
		Boolean flag = false;
		// 简单的冒泡排序
		for (int i = 0; i < array.length - 1; i++) {
			for (int j = 0; j < array.length - 1 - i; j++) {
				if (array[j] > array[j + 1]) {
					flag = true;
					temp = array[j];
					array[j] = array[j + 1];
					array[j + 1] = temp;
				}
			}
			System.out.println(Arrays.toString(array));
			if (!flag) {// 在一次排序中,一次交换都没有发生过
				break;
			} else {
				flag = false;// 重置flag,进行下次判断
			}
		}
	}
}
posted @ 2022-06-14 08:50  道祖且长  阅读(31)  评论(0)    收藏  举报