插入排序——Python

  1. 算法步驟
    將第一待排序序列第一個元素看做一個有序序列,把第二個元素到最后一個元素當成是未排序序列。
    從頭到尾依次掃描未排序序列,將掃描到的每個元素插入有序序列的適當位置。(如果待插入的元素與有序序列中的某個元素相等,則將待插入元素插入到相等元素的后面。)

  2. 代碼

#!/usr/bin/python

list = [10,6,4,8,2,9,1] 
def insertionSorted(list):
    for i in range(1, len(list)):
        preIndex = i-1  #前一個是有序序列
        current = list[i]   #從第一個到最后一個是待排序序列
        while preIndex >= 0 and list[preIndex] > current:   #當?shù)趇比i-1小時
            list[preIndex+1] = list[preIndex]   
            preIndex-=1
        list[preIndex+1] = current
                
    return list

print(insertionSorted(list))
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 一、概念及原理插入排序(英語:Insertion Sort)是一種簡單直觀的排序算法。它的工作原理是通過構建有序序...
    楠木cral閱讀 2,914評論 0 2
  • 概述 排序有內部排序和外部排序,內部排序是數(shù)據(jù)記錄在內存中進行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部...
    蟻前閱讀 5,303評論 0 52
  • 1.插入排序—直接插入排序(Straight Insertion Sort) 基本思想: 將一個記錄插入到已排序好...
    依依玖玥閱讀 1,356評論 0 2
  • 總結一下常見的排序算法。 排序分內排序和外排序。內排序:指在排序期間數(shù)據(jù)對象全部存放在內存的排序。外排序:指在排序...
    jiangliang閱讀 1,520評論 0 1
  • 你有一劍開天門,我有一劍斬黃龍,怒 你有一桿梅子酒,我有二姐死士甲,傷 你有一盤黑白棋,我有姜泥神符刺,念 你有一...
    雀替閱讀 198評論 0 0

友情鏈接更多精彩內容