没事无聊闲,写一下Java的经典算法
- 我们最常见的冒泡排序法
//冒泡排序
public class maopaopaixu {
public static void main(String[] args) {
int[] arry = { 34, 54, 6, 87, 98, 54, 359, 1 };
int jh = 0;
int bj = 0;
for (int i = 0; i < arry.length - 1; i++) {
for (int j = 0; j < arry.length - 1; j++) {
if (arry[j] > arry[j + 1]) {
int tep = arry[j];
arry[j] = arry[j + 1];
arry[j + 1] = tep;
jh++;
}
bj++;
}
}
System.out.println("比较:" + bj + "次,交换:" + jh + "次");
for (int i = 0; i < arry.length; i++) {
System.out.print(arry[i] + "\t");
}
}
}
如下:
2.选择排序
//选择排序
public class xuanzepaixu_1 {
public static void main(String[] args) {
int jh = 0;
int bj = 0;
int[] arry = { 34, 54, 6, 87, 98, 54, 359, 1 };
for (int i = 0; i < arry.length - 1; i++) {
for (int j = i + 1; j < arry.length; j++) {
if (arry[i] > arry[j]) {
int tep = arry[i];
arry[i] = arry[j];
arry[j] = tep;
jh++;
}
bj++;
}
}
System.out.println("比较:" + bj + "次,交换:" + jh + "次");
for (int i = 0; i < arry.length; i++) {
System.out.print(arry[i] + "\t");
}
}
}
从冒泡到这里,我们可以看出选择排序的效率高一点。