从第一个数开始,通过两两比较,将最大的数放在最后。
这是第一轮确定了最后最大值的位置,之后再对前边的数重复进行上述操作,依次确定最终位置
结果如图:
public static void bubbleSort(int[] array) {
for (int i = 0; i < array.length - 1; i++) {
// 无序区间是 [0, arrya.length - i)
boolean sorted = true;
for (int j = 0; j < array.length - i - 1; j++) {
if (array[j] > array[j + 1]) {
swap(array, j, j + 1);
sorted = false;
}
}
if (sorted) {
break;
}
}
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。