03_排序_冒泡排序

【基本原理】

顾名思义就是整个过程向气泡一样往上升,单向冒泡排序的基本原理就是:

对于给定的n个数据,从第一个数据开始一次对相邻的两个记录进行比较,当前面的记录大于后面的记录时,交换位置,进行一轮比较和换位后,n个记录中最大的那个被排在最后,即第n位。

然后对前面n-1个记录进行第二次比较,重复该过程。

【代码实现】

package com.sort;
//冒泡算法
public class TestBubbleSort {
    public static void main(String[] args){
        int a[]={2,9,0,8,7,1,5,4,3,6};
        a=bubbleSort(a);
        for(int i=0;i<a.length;i++){
            System.out.print(a[i]+" ");
        }
    }
    
    public static int[] bubbleSort(int[] a){
        int length=a.length;
        int i,j,temp;
        for(i=length-1;i>0;i--){   //本例,第一次限制在0-9循环,第二次限制在0-8循环,一次降低
            for(j=0;j<i;j++){     
                if(a[j]>a[j+1]){   //将大的数字放在a[j+1]
                    temp=a[j];
                    a[j]=a[j+1];
                    a[j+1]=temp;
                }
            }
        }
        return a;
    }
}
原文地址:https://www.cnblogs.com/HigginCui/p/5709294.html