排序算法总结

排序算法总结

package com.oterman.sort;

/**
 * Created by oterman on 2017/7/12.
 */

public class AllSort {

    /**
     八大排序算法:
     插入:直接插入排序,希尔排序;
     交换:冒泡排序,快速排序
     选择排序:简单选择排序,堆排序
     归并排序
     基数排序
     */

    /*
    冒泡排序:通过两个相互比较交换
     */
    public static void bubbleSort(int[] a){
        for (int i=0;ii;j--){//从后往前冒
                if(a[j]=0&&temp0;gap/=2){

            //增量为gap的插入排序
            for (i=gap;i=0&&temp=a[low]){
                low++;
            }

            a[high++]=a[low];
        }

        a[low]=pivot;

        return low;
    }


    public static void swap(int[] a,int i,int j){
        int temp=a[i];
        a[i]=a[j];
        a[j]=temp;
    }

    public static void swap2(int[] a,int i,int j){
       a[i]=a[i]+a[j];
        a[j]=a[i]-a[j];
        a[i]=a[i]-a[j];

    }

    public static void swap3(int[] a,int i,int j){
        a[i]=a[j]-a[i];//距离
        a[j]=a[j]-a[i];
        a[i]=a[j]+a[i];
    }


}

你可能感兴趣的:(排序算法总结)