算法1——冒泡排序

冒泡排序的基本思想:每次比较相邻的两个元素,如果不符合排序顺序,就交换位置。

冒泡排序的算法核心是冒泡,假如有10个数,要进行9次运算,每次一次运算都挑选出最大(最小)的数,放到数组的最后(最前);每次都从第一个数开始,已经排序好放到最后的数不再参与。

    第一次冒泡时,从第一个数开始,需要比全部的数;最大的数放到了最后;

    第二次冒泡时,从第一个数开始,只需要比N-1个数,因为最后一个数是最大的,不需要参加比对;

    ......    

    第N-1次冒泡后,后面N-1个数,都是按照大小顺序排列的,第一个数自然是最小的,因此排序完成;

代码示意:

public static void Maopao() {
    int a[] = { 6, 3, 8, 2, 9, 1 };// 待排序的值
	for (int i = 0; i < a.length - 1; i++) {
		for (int j = 0; j < a.length - i - 1; j++) {
			if (a[j] > a[j + 1]) {
				int t = a[j];
				a[j] = a[j + 1];
				a[j + 1] = t;
			}
		}
	}
}

猜你喜欢

转载自blog.csdn.net/wang121921936/article/details/84486375