算法學習筆記之插入排序

原理:就像打撲克牌一樣,手中的牌永遠是排好序的,再從牌堆最上面取過來一張,此時從右往左,依次比較手中的牌與剛取的牌的大小,如果發現比剛取的牌大的話,就將其往右移動一個位置,依次類推,直到找到合適的位置,將此牌插入進去
適用範圍:小規模的排序
時間複雜度:Θ(n^2)
C#實現:
int[] nums = new int[] { 23, 4, 63, 14, 34, 21, 391, 124, 1 };
int count = nums.Length;
int i;
for (i = 1; i < count; i++)
{
    int key = nums[i];
    int j = i -1;
    while (j >= 0 && nums[j] > key)
    {
        nums[j+1] = nums[j];
        j--;
    }
     nums[j+1] = key;
}



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