国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現(xiàn)的插入排序算法原理與用法實例分析

2020-02-16 10:48:06
字體:
供稿:網(wǎng)友

本文實例講述了Python實現(xiàn)的插入排序算法原理與用法。分享給大家供大家參考,具體如下:

插入排序的基本操作就是將一個數(shù)據(jù)插入到已經(jīng)排好序的有序數(shù)據(jù)中,從而得到一個新的、個數(shù)加一的有序數(shù)據(jù),算法適用于少量數(shù)據(jù)的排序,時間復(fù)雜度為O(n^2)。是穩(wěn)定的排序方法

插入算法把要排序的數(shù)組分成兩部分:第一部分包含了這個數(shù)組的所有元素,但將最后一個元素除外(讓數(shù)組多一個空間才有插入的位置),而第二部分就只包含這一個元素(即待插入元素)。在第一部分排序完成后,再將這個最后元素插入到已排好序的第一部分中。

插入排序的基本思想是:每步將一個待排序的紀(jì)錄,按其關(guān)鍵碼值的大小插入前面已經(jīng)排序的文件中適當(dāng)位置上,直到全部插入完為止。

具體代碼如下:

#-*- coding: UTF-8 -*-import numpy as npdef InsertSort(a):  for i in xrange(1,a.size):    for j in xrange(i,0, -1):      if a[j-1] > a[j]:        a[j-1] , a[j] = a[j], a[j-1]      else:        breakif __name__ == '__main__':  a = np.random.randint(0, 10, size = 10)  print "Before sorting..."  print "---------------------------------------------------------------"  print a  print "---------------------------------------------------------------"  print "After sorting..."  InsertSort(a)  print "---------------------------------------------------------------"  print a  print "---------------------------------------------------------------"

運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》

希望本文所述對大家Python程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 胶州市| 连江县| 绥德县| 沅陵县| 通渭县| 宁安市| 新巴尔虎左旗| 石河子市| 武山县| 交口县| 红安县| 德昌县| 清涧县| 汝南县| 连江县| 永年县| 安吉县| 瑞安市| 延庆县| 句容市| 眉山市| 鄂尔多斯市| 利辛县| 漯河市| 马关县| 永胜县| 韩城市| 郁南县| 屏山县| 涟源市| 吴江市| 宁武县| 右玉县| 台北市| 吴堡县| 苏尼特左旗| 邵东县| 灵石县| 五常市| 四平市| 平舆县|