1. 程式人生 > >插入排序演算法思路及Java實現

插入排序演算法思路及Java實現

1.插入排序演算法思路

我們首先來看看插入排序的過程:

2.插入排序虛擬碼實現

3.插入排序java程式碼實現

public class InsertionSort {

	public static void main(String[] args) {
          int[] a=new int[]{9,8,7,6,5,4,3,2,1};
          Sort(a);
          for(int i=0;i<a.length;i++)
          System.out.println(a[i]);
	}
    public static void Sort(int[] a){
    	for(int j=1;j<a.length;j++){
    		int key=a[j];
    		int i=j-1;
    		while(i>=0 && a[i]>key){
    			a[i+1]=a[i];
    			i--;
    		}
    		a[i+1]=key;
    	}
    }
    public static void SortDesc(int[] a){
    	for(int j=1;j<a.length;j++){
    		int key=a[j];
    		int i=j-1;
    		while(i>=0 && a[i]<key){
    			a[i+1]=a[i];
    			i--;
    		}
    		a[i+1]=key;
    	}
    }
}