实现原理:
1.比较相邻元素:从数列的第一个元素开始,比较相邻的两个元素,如果第一个元素大于第二个元素,则交换它们的位置。
2.重复交换:对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
3.重复遍历:针对所有的元素重复以上的步骤,除了最后一个。
4.优化:如果在某次遍历中没有发生任何交换,说明数列已经排序完成,可以提前结束算法
package 八大排序;
import java.util.Arrays;
//冒泡排序
public class BubbleSort {
public static void main(String[] args) {
int[] arr = {1,4,6,3,2,56,3,-12,-33,76,100};
sort(arr);
System.out.println(Arrays.toString(arr));
}
public static void sort(int[] arr){
for (int j = 0; j < arr.length; j++) {
for (int i = 0; i < arr.length-1-j; i++) {
if(arr[i]>arr[i+1]){
int temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
}
}
}