數據結構與算法-學習筆記(9)-直接插入排序

菜鳥一枚,
剛剛學習數據結構與算法,
爲了加深理解,
所以與同學們分享學習過程。

今天學習的是,
直接插入排序!!!
未排序好是數,與前面已排序好的數進行比較,找到合適的位置插入
上圖片
在這裏插入圖片描述
上代碼

#include <stdio.h>

void insertsort(int k[],int n)
{
    int i,j,temp;
    for(i=1;i<n;i++)
    {
        if(k[i]<k[i-1])
        {
            temp=k[i];
            for(j = i-1;k[j] > temp;j--)   //若j前面的數大於temp
            {

                k[j+1] = k[j];   //則往後推
            }
            k[j+1]=temp;  //此處j+1與for循環中的j+1不同,因爲j--了
        }
    }
}

int main()
{
    int i,a[10]={4,3,6,1,0,8,7,2,9,5};

    insertsort(a,10);

    printf("排序後結果爲:");
    for(i=0;i<10;i++)
        {
            printf("%d",a[i]);
        }
    return 0;
}

謝謝同學們的閱讀!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章