C語言實現常用排序算法——插入排序


 

插入排序是最基礎的排序算法,原理:

首先1個元素肯定是有序的,所以插入排序從第二個元素開始遍歷;
內循環首先請求一個空間保存待插入元素,從當前元素向數組起始位置反向遍歷;
當發現有大於待插入元素的元素,則將此元素向后挪一位,最終將緩沖區的元素放入空白位置。

 

void insert_sort(int a[],int n) {
    int i,j,temp;
    for(i=1; i<n; i++) {
        temp=a[i];
        for(j=i; j>0; j--) {
            if(temp<a[j-1]) {
                a[j]=a[j-1];
            }else{
                break;
            }
        }
        a[j]=temp;
    }
}

 有圖有真相:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM