数组的使用与冒泡排序

数组的定义

int[] array=new int[10];

 

二维数组

int arrays={{}0,1,{1,2}}

 

Arrays用法

int[] arrays={0,12,13,46,79,78,97,97};
//打印出数组的值
System.out.println(Arrays.toString(arrays));
//数组进行升序排序
Arrays.sort(arrays);
System.out.println(Arrays.toString(arrays));
//数组填充   [左闭右开区间,就是将2,3位替换为0]
Arrays.fill(arrays,2,4,0);

 

 

冒泡排序

冒泡排序定义:

  1. 比较数组中,两个相邻的元素,如果第一个数比第二个数大,那就交换位置,比较下一位

  2. 每一次比较,都可以产生一个最大的值,或者最小的值

  3. 下一次循环可以少一次排序

  4. 以此循环,直到结束

 

 

public static void main(String[] args) {

   int[] bubbingsort={1,4,98,62,3};
   System.out.println(Arrays.toString(sort(bubbingsort)));
}
public static int[] sort(int[] param){
   //定义临时变量用于交换位置
   int temp = 0;
   //优化冒泡排序,如果数组中的5个值,已经有序,那么可以就不需要在去比较数组.length轮次去排序
   //所以定义一个boolean变量
   boolean tag=false;
   //外边循环需要判断我们要执行多少轮次
   for (int i = 0; i < param.length-1; i++) {
       for (int j = 0; j < param.length-1-i; j++) {
           if(param[j+1]<param[j]){
               temp=param[j];
               param[j]=param[j+1];
               param[j+1]=temp;
               tag=true;
          }
      }
       if(!tag){
           //如果tag等于false,说明这轮比较就已经将数组排序好了,就可以直接跳出大循环即可
           break;
      }
  }
   return param;
}

 

 

 

posted @ 2021-03-18 10:43  HOTCOLD  阅读(90)  评论(0)    收藏  举报