1
package
method.sort;
2
3 public class BubbleSort
4 {
5
6 /*
7 * 1.冒泡排序方法,下面有三种方法
8 * 2.第一种方法相对更好,因为如果它本身就是有顺序的话,
11 public static void bubbleSort( int [] array)
12 {
13 /*
14 int temp = 0;
15 for (int i = array.length - 1; i > 0; --i)
16 {
17 boolean isSort = false;
18 for (int j = 0; j < i; ++j)
19 {
20 if (array[j + 1] < array[j])
21 {
22 temp = array[j];
23 array[j] = array[j + 1];
24 array[j + 1] = temp;
25 isSort=true;
26 }
27 }
28 if(!isSort)break;
29 }
30 */
31
32 /*
33 for(int i = array.length - 1; i > 0; i--)
34 {
35 for(int j = 0; j < i; j++)
36 {
37 if(array[j] > array[j + 1])
38 {
39 array[j] = array[j] + array[j + 1];
40 array[j + 1] = array[j] - array[j + 1];
41 array[j] = array[j] - array[j + 1];
42 }
43 }
44 }
45 */
46
47 for ( int i = 0 ; i < array.length; i++)
48 {
49 for ( int j = 0 ; j < array.length - i - 1 ; j++)
50 {
51 if (array[j] > array[j + 1 ])
52 {
53 array[j] = array[j] + array[j + 1 ];
54 array[j + 1 ] = array[j] - array[j + 1 ];
55 array[j] = array[j] - array[j + 1 ];
56 }
57 }
58 }
59
60 }
61
62 public static void main(String[] args)
63 {
64 int [] array = new int []{ 8 , 5 , 3 , 89 , 4 , 45 , 78 , 1 , 134 , 3 , 45 , 23 , 2 , 7 , 8 , 89 , 23 , 22 , 566 , 34 , 76 , 0 };
65
66 bubbleSort(array);
67
68 for ( int i = 0 ; i < array.length;)
69 {
70 System.out.print(array[i] + " \t " );
71 if (++i % 5 == 0 )
72 {
73 System.out.println();
74 }
75 }
76 }
77
78 }
2
3 public class BubbleSort
4 {
5
6 /*
7 * 1.冒泡排序方法,下面有三种方法
8 * 2.第一种方法相对更好,因为如果它本身就是有顺序的话,
9 * 说明不需要第二层循环了,直接退出,这种方法更有效率
10 */11 public static void bubbleSort( int [] array)
12 {
13 /*
14 int temp = 0;
15 for (int i = array.length - 1; i > 0; --i)
16 {
17 boolean isSort = false;
18 for (int j = 0; j < i; ++j)
19 {
20 if (array[j + 1] < array[j])
21 {
22 temp = array[j];
23 array[j] = array[j + 1];
24 array[j + 1] = temp;
25 isSort=true;
26 }
27 }
28 if(!isSort)break;
29 }
30 */
31
32 /*
33 for(int i = array.length - 1; i > 0; i--)
34 {
35 for(int j = 0; j < i; j++)
36 {
37 if(array[j] > array[j + 1])
38 {
39 array[j] = array[j] + array[j + 1];
40 array[j + 1] = array[j] - array[j + 1];
41 array[j] = array[j] - array[j + 1];
42 }
43 }
44 }
45 */
46
47 for ( int i = 0 ; i < array.length; i++)
48 {
49 for ( int j = 0 ; j < array.length - i - 1 ; j++)
50 {
51 if (array[j] > array[j + 1 ])
52 {
53 array[j] = array[j] + array[j + 1 ];
54 array[j + 1 ] = array[j] - array[j + 1 ];
55 array[j] = array[j] - array[j + 1 ];
56 }
57 }
58 }
59
60 }
61
62 public static void main(String[] args)
63 {
64 int [] array = new int []{ 8 , 5 , 3 , 89 , 4 , 45 , 78 , 1 , 134 , 3 , 45 , 23 , 2 , 7 , 8 , 89 , 23 , 22 , 566 , 34 , 76 , 0 };
65
66 bubbleSort(array);
67
68 for ( int i = 0 ; i < array.length;)
69 {
70 System.out.print(array[i] + " \t " );
71 if (++i % 5 == 0 )
72 {
73 System.out.println();
74 }
75 }
76 }
77
78 }