冒泡排序原理:
比较相邻的元素。如果前一个元素比后一个元素大,就交换这两个元素的位置。对每一对相邻元素做相同的工作,从开始第一对元素到结尾的最后一对元素。最终最后位置的元素就是最大值。排序原理如图:
冒泡排序算法实现:(稳定排序)
public static void main(String
[] args
) {
int[] arr
= {8, 4, 5, 7, 1, 3, 6, 2};
sort(arr
);
for (int i
: arr
) {
System
.out
.print(i
+"\t");
}
}
public static void sort(int[] a
) {
for (int i
= a
.length
- 1; i
> 0; i
--) {
for (int j
= 0; j
< i
; j
++) {
if (greater(a
[j
], a
[j
+ 1])) {
exc(a
, j
, j
+ 1);
}
}
}
}
public static boolean greater(int v
, int w
) {
return v
> w
;
}
public static void exc(int[] a
, int i
, int j
) {
int temp
;
temp
= a
[i
];
a
[i
] = a
[j
];
a
[j
] = temp
;
}
实验结果:
转载请注明原文地址:https://blackberry.8miu.com/read-35131.html