冒泡排序

原理

  • 遍历数组
  • 每次找到最大或者最小值
  • 把他放到开头
  • 遍历剩下的元素
  • 重复找大小的操作

    代码实现

    ```javascript import java.lang.reflect.Array; import java.util.Arrays;

/**

  • @author laoduan
  • @create 2020-04-28-16:07 */ public class Bubblesort { public static void main(String[] args) {

    1. int arr[]={3,9,-1,10,-2};
    2. System.out.println("排序前的数组为");
    3. System.out.println(Arrays.toString(arr));
  1. BubbleSort(arr);
  2. System.out.println("排序后的数组为");
  3. System.out.println(Arrays.toString(arr));
  4. }
  5. public static void BubbleSort(int [] arr){
  6. int temp = 0;//临时变量
  7. boolean flag = false;//标识变量,表示是否进行交换
  8. for (int i=0;i<arr.length-1;i++){
  9. for (int j=0;j<arr.length-1-i;j++){
  10. if(arr[j]>arr[j+1]){
  11. flag=true;
  12. temp=arr[j];
  13. arr[j]=arr[j+1];
  14. arr[j+1]=temp;
  15. }
  16. }
  17. if (flag==false){
  18. //说明在一次排序中一次都没有交换
  19. break;
  20. }else{
  21. flag=false;//重置lfag,进行下次判断
  22. }
  23. }
  24. }

}

```