Java 冒泡排序算法

冒泡算法原理

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

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

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

Java 冒泡排序算法_第1张图片

 

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

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Java,算法)