冒泡排序
冒泡排序只比较相邻两个元素之间的大小,如果元素大小关系不正确,则交换这两个数,重复该步骤,直到我们到达数组的末尾。
一次冒泡至少让一个元素处于正确位置,重复n次冒泡,则完成了n个元素的排序
冒泡排序也能进行优化
改进的思路很简单:如果我们通过内部循环完全不交换,这意味着数组已经排序,我们可以在这个点上停止冒泡排序。
public static void bubblesort(int[] a) {
int n = a.length;
if (n<=1) return;
int temp;
for (int i = 1; i < n; i++) {
boolean flag = false;//判断数据交换的标志
for (int j = 0; j < n-i-1; j++) {
if (a[j] > a[j +