排序算法

Posted 星空的衣角

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法相关的知识,希望对你有一定的参考价值。

一、选择排序

import random
import time

def selectionSort(li):
for i in range(len(li) - 1):
min = i #添加一个变量存储下标,这个是作为优化该排序
for j in range(i+1, len(li)):
if li[min] > li[j]:
min = j #第一次遍历后把最小的下标存储到min变量里
tmp = li[i] #把第一次遍历最小值替换
li[i] = li[min]
li[min] = tmp

if __name__ == "__main__":
li = list()
for i in range(20000):
li.append(random.randrange(30000))
start = time.time()
print(start)
selectionSort(li)
end = time.time()
print(end)

 

以上是关于排序算法的主要内容,如果未能解决你的问题,请参考以下文章

算法排序之堆排序

快速排序-递归实现

从搜索文档中查找最小片段的算法?

在第6731次释放指针后双重免费或损坏

TimSort算法分析

以下代码片段的算法复杂度