package com.eight.paixu;
import java.util.Arrays;
/* 冒泡排序
* 基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。
* 即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
*
* 冒泡排序:一趟一趟的比较,比较相邻元素的大小,每趟有一个元素沉入最后面的位置
* 属于交换类排序
* 稳定的排序算法
* 平均时间复杂度O(n*n)
* 最坏时间复杂度O(n*n)
* 空间复杂度O(1)
* n较小时适用
*/
public class BubbleSort {
public static void main(String[] args) {
int a[]={4,3,6,9,1,8,2,5,0,7};
bubbleSort(a);
// for(int i=0;i<a.length;i++){
// System.out.println(a[i]);
// }
}
private static void bubbleSort(int[] a) {
for(int i=0;i<a.length-1;i++)
{
for(int j=0;j<a.length-1-i;j++)
{
if(a[j]>a[j+1])
{
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
System.out.println(Arrays.toString(a)+"bubbleSort冒泡排序");
}
}