效率较高的冒泡排序

简介:
<span style="font-size:14px;">
import java.util.Arrays;  
public class BubbleSort {  
    public int[] sort(int[] source){  
        int[] dest=new int[source.length];  
        System.arraycopy(source, 0, dest, 0, source.length);  
        boolean change=true;  
        int temp=0;  
        //外层循环的退出条件是全部比较结束(i>=1),或一趟比较中没有发生位次的改变(change==false)  
        for(int i=dest.length-1;i>=1&&change;i--){  
            change=false;  
            for(int j=0;j<i;j++){  
                if(dest[j]>dest[j+1]){  
                    temp=dest[j];  
                    dest[j]=dest[j+1];  
                    dest[j+1]=temp;  
                    change=true;  
                }  
            }  
        }  
        return dest;  
    }  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
        BubbleSort bubbleSort=new BubbleSort();  
        int[] source=new int[]{2,5,1,4,9,12,10,7,25};  
        int[] dest=bubbleSort.sort(source);  
        for(int i=0;i<dest.length;i++){  
            System.out.println(dest[i]);      
        }  
    }  
}  </span>

目录
相关文章
|
6月前
|
搜索推荐 算法
冒泡排序的效率的优化
冒泡排序的效率的优化
48 0
|
搜索推荐 算法 索引
冒泡排序算法的实现和优化~
冒泡排序算法的实现和优化~
|
搜索推荐 算法
|
搜索推荐
21 常见排序算法效率比较
21 常见排序算法效率比较
221 0
|
机器学习/深度学习 人工智能 算法
快速排序的实现和优化~
快速排序的实现和优化~
|
搜索推荐 算法 C++
选择排序算法的实现和优化
选择排序算法的实现和优化
|
搜索推荐
插入排序算法的实现和优化~
插入排序算法的实现和优化~
|
C语言
如何优化快速排序?
如何优化快速排序?
35829 0
如何优化快速排序?
|
算法 搜索推荐 C语言
用或不用大O来优化代码(选择排序)
用或不用大O来优化代码(选择排序)
87 0
|
搜索推荐 算法
冒泡排序以及优化
冒泡排序以及优化
156 0
冒泡排序以及优化