冒泡排序

 

 1 //1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置
 2 //2.每一次比较,都会产生出一个最大,或者最小的数字
 3 //3.依次循环,直到结束!
 4 
 5 package array;
 6 
 7 import java.util.Arrays;
 8 
 9 public class ArrayDemo07 {
10     public static void main(String[] args) {
11 
12         int[] a = {52,556,4,5,6,99,55,33,645,859478};
13         int[] sort = sort(a);//调用完我们自己写的排序方法以后,返回一个排序后的数组
14         System.out.println(Arrays.toString(sort));
15     }
16     public static int[] sort(int[] array){
17         int temp = 0;//临时变量
18         for (int i = 0; i < array.length-1 ; i++) {//外层循环:判断我们要走多少次
19             boolean flag = false;//通过flag标识位减少没有意义的比较
20             for (int j = 0; j < array.length-1-i ; j++) {//内层循环:判断两个数,如果第一个数比第二个数大,则交换位置
21                 if (array[j + 1] > array[j]) {//大到小
22                     // if (array[j+1] < array[j] ){//小到大
23                     temp = array[j];
24                     array[j] = array[j + 1];
25                     array[j + 1] = temp;
26                     flag = true;
27                 }
28             }
29             if(flag == false){
30                 break;
31             }
32         }
33         return array;
34     }
35 }

 

posted on 2022-08-02 11:05  一枚努力学习的小白  阅读(4)  评论(0编辑  收藏  举报