java实现冒泡排序,设立标志位,减少遍历趟数

import java.util.Arrays;

public class Popo {

	public static void main(String[] args) {
		int[] data = { 2, 3, 1, 5, 4, 8, 6, 7, 3, 8, 9, 1 };
		popSort(data);
		System.out.println(Arrays.toString(data));
	}

	public static void popSort(int[] data) {
		boolean flag = true;//标志位
		for (int i = 0; i < data.length; i++) {
			flag = true;
			for (int j = 0; j < data.length - i - 1; j++) {
				if (data[j] > data[j + 1]) {
					int temp = data[j];
					data[j] = data[j + 1];
					data[j + 1] = temp;
					flag = false;
				}
			}
			if (flag == true)
				break;
		}
	}
}

你可能感兴趣的:(Java,java算法)