冒泡排序
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 }