插入排序的使用及優缺點

                   插入排序類似於對撲克牌的插入,具體算法從數組第二個元素開始循環進行,每個循環中包涵的代碼實現的過程爲,另取出的元素【j】與前一個元素【i】=j-1進行比較,利用while循環比較一次之後執行一次i-1,一直比較到最前面的那一個,遇到比自己小的就把那個小的安排到後一個位置上去,最後再把比較的這個數字【j】安放到【i+1】的位置上去。在排序所花的時間方面分析,通常包涵for或者while的地方都會比代碼實際執行的次數多一次因爲要進行一次失敗的比較然後退出,所以有for這類的東西的地方設爲n次其他的地方都是n-1,在while的時候又進行了一次循環,又要分情況。這裏一般按最壞的情況打算,都是返向的所以執行次數最多的情況下,在這種情況下是一個一元二次函數因此在執行的過程中主要看的是那個二次項n的2次方的增長情況看算法所需要的時間因此這個算法o(n*n)增長量級是n方。在運行次數少的情況下比較有優勢而在遇到數量級很大的情況下還是要使用歸併排序比較好

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