本文,用python对一串数字进行排序,用最简单的冒泡排序算法。
工具/原料
python3.6
time模块(用来查看运行时间)
random模块(用来生成随机序列)
jupyter编译器
方法/步骤
1
先来构造一个随机序列:
import random
shuzi = [random.randint(0,10000000) for _ in range(3000)]
2
自定义一个函数,对数字进行排序:
def pao(c):
n = len(c)-1
while n>0:
for i in range(0,n):
if c[i]>c[i+1]:
c[i],c[i+1]=c[i+1],c[i]
n-=1
print(c)
return c
3
给出序列c,用自定义的函数进行排序。
c=[5,3,6,9,53,62,65,3,2,5,]
pao(c)
这个函数给出了排序的具体过程。
4
看一下排序所用的时间:
import time
a=time.clock()
c=[5,3,6,9,53,62,65,3,2,5,]
pao(c)
b=time.clock()
print('用时%s秒'%(b-a))
5
用这个方法,对shuzi进行排序。不过要注意,由于shuzi里面的数字太多,这里不要输出,我们只关心排序所用的时间。
6
如果换成是30000个随机数字,排序耗时长达70多秒。
END
注意事项
对比步骤5和6所用的时间,数字增加了10倍,耗时增加到了100倍。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
举报作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部