java 算法基础之六插入排序与冒泡排序

1、插入排序

插入是比较简单的一种排序方法,基本思想就是把数据分组两段,一部分是有序,另一部分是待排序的。把有序的数据不断的加大到全数组完成排序。

代码完成如下:

class insert 
{
    public void insert_sort(int[] arrays){
        for(int i=0;i<arrays.length;i++){
            for(int j=i;j>0;j--){
                if(j==0)
                    continue;
                if(arrays[j]>arrays[j-1]){
                    int tmp;
                    tmp=arrays[j];
                    arrays[j]=arrays[j-1];
                    arrays[j-1]=tmp;

                }
            }
        }
        snp(arrays);
    }
    public void snp(int[] arrays){
        for(int i=0;i<arrays.length;i++){
            System.out.print(arrays[i]+" ");

        }
        System.out.println();
    }
    public static void main(String[] args) 
    {
        insert i=new insert();
        int[] a={4,8,6,7,2,9,5,10,54};
        i.insert_sort(a);
    }
}

 

 

2、冒泡排序

 

 

冒泡排序是一个很有历史的排序方法了,就是把数组中比较大的数不断的冒在前面。一直冒完整个数据就完成排序。

代码写法:

class bubble 
{
    public void bubble_sort(int[] arrays){
        for(int i=0;i<arrays.length;i++){
            for(int j=i+1;j<arrays.length;j++){
                if(arrays[i]<arrays[j]){
                    int tmp;
                    tmp=arrays[i];
                    arrays[i]=arrays[j];
                    arrays[j]=tmp;
                }
            }
        }
        snp(arrays);
    }
    public void snp(int [] arrays){
        for(int i=0;i<arrays.length;i++){
            System.out.print(arrays[i]+" ");
        }
        System.out.println();
    }
    public static void main(String[] args) 
    {
        bubble b=new bubble();
        int[] a={4,5,1,7,9,6};
        b.bubble_sort(a);
    }
}
posted @ 2012-09-10 16:36  春天的故事  阅读(495)  评论(0编辑  收藏  举报