最简单也是程序员必会的冒泡排序

冒泡排序

思想:

  1. 就是两两交换,比如我们升序排列,那么就要大的放在后面,所以两两比较然后大的就换一下位置
  2. 如果只是一层循环的话,只能比较出最大的数字然后排到最后,所以还需要外层一个循环
  3. 比较是两两比较所以比较次数肯定是length-1
    在这里插入图片描述

Test.java

package 冒泡排序;
public class Test {
 public static void main(String[] args) {
  // TODO 自动生成的方法存根
        int arr[]= {5,2,4,6,1,3};
        swap(arr);
        for (int i : arr) {
          System.out.print(i+" ");
        }
 }
 public static void swap(int[] arr) {
  int temp=0;
  for(int count=0;count<arr.length-1;count++)
      for(int i=0;i<arr.length-1;i++)    //循环完
      if(arr[i]>arr[i+1]) {
     temp=arr[i+1];
     arr[i+1]=arr[i];
     arr[i]=temp;
      }
     }
}

总结

  1. 冒泡排序需要两两比较,如果数组值比较多,比较次数成倍增长
  2. 再者外面还有一层循环,数组越长则时间复杂度越久
    在这里插入图片描述
发布了105 篇原创文章 · 获赞 19 · 访问量 4967

猜你喜欢

转载自blog.csdn.net/jiohfgj/article/details/105037617