冒泡排序

java方式实现

Posted by 毒药 on January 11, 2018

冒泡排序 需求: 对数组进行降序或者升序排列 方法: 依次比较相邻两个数的大小,将值大的元素交换到右边(升序)

java代码实现:

public class BubbleSortTest {
	
	public static void main(String[] args) {
		int[] arr = new int[] {10,3,5,2,4,6,8,9,7,1};
		System.out.println("===========开始排序(升序排列)==========");
		boolean flag = true;
		for (int i=0; i<arr.length-1; i++) {
			for (int j=i+1; j< arr.length; j++) {
				if (arr[i] > arr[j]) {
					int temp = arr[j];
					arr[j] = arr[i];
					arr[i] = temp;
					flag = false;
				}
			}
			if (flag) {
				break;
			}
		}
		System.out.println("===========排序结束==========");
		System.out.print("排序后的结果为:");
		for (int num : arr) {
			System.out.print(num+",");
		}
	}
	
}

备注: flag标记作用为当数组已经按照升序排列时,无需继续比较,直接结束