面试积累(冒泡排序和选择排序)

 1 public class Demo {
 2 public static void main(String[] args){
 3 //声明一个数组,并为数组赋值
 4 int[] array={45,90,89,12,56,6,67};
 5 //冒泡排序
 6 /*用for循环嵌套来为数组进行冒泡排序,冒泡排序的第一次会挑选出最大值,第二次挑出老二...
 7 * 采用的是互相之间两两比较的模式
 8 */
 9 for(int i=0;i<array.length-1;i++){
10 for(int j=0;j<array.length-1;j++){
11 if(array[j]>array[j+1]){
12 int temp=array[j+1];
13 array[j+1]=array[j];
14 array[j]=temp;
15 }
16 }
17 }
18 //选择排序
19 /* 选择排序比冒泡排序的效率要高一倍,采用的是打擂台的模式,
20 第一个将所有人打败后排在首位,第一个人获得第一后就不再参加比较 . */
21 for(int i=0;i<array.length-1;i++){
22 for(int j=i;j<array.length-1;j++){
23 if(array[i]<array[j+1]){
24 int temp=array[j+1];
25 array[j+1]=array[i];
26 array[i]=temp;
27 }
28 }
29 }
30 //用for循环输出数组
31 for(int k=0;k<array.length;k++){
32 System.out.println(array[k]);
33 }
34 } 
35 }
View Code

 冒泡排序和选择排序的比较:选择排序的效率要比冒泡排序高一倍多。

你可能感兴趣的:(面试积累(冒泡排序和选择排序))