Java 冒泡排序算法

时间:2021-11-15 12:57:43

冒泡算法原理

1.比较两个相邻的元素,如果一个大于第二个,则交换他们;否则不用交换;

2.从第一个元素开始,依次比较两个相邻的元素,直到最后一个元素;

3.重复步骤2,开始新一轮的比较,直到得出排序后的结果。

Java 冒泡排序算法

 

Java代码如下:

package cn.com.chiclewu;

/**
* 练习冒泡排序法
* @author chiclewu
*
*/
public class BubbleSort {
//按照升序进行排序
public static void ascendingSort(int[] array) {
int temp;
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length - 1 - i; j++) {
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}

//按照降序进行排序
public static void descendingSort(int[] array) {
int temp;
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length - 1 - i; j++) {
if (array[j] < array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}

public static void main(String[] args) {
int[] a = { 5, 7, 2, 8, 3 };
ascendingSort(a);
System.out.println("升序:");
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
System.out.println();

int[] b = { 5, 7, 2, 8, 3 };
descendingSort(b);
System.out.println("降序:");
for (int i = 0; i < b.length; i++) {
System.out.print(b[i] + " ");
}

}
}

输出结果:

升序:
2 3 5 7 8
降序:
8 7 5 3 2