给数组倒序

您所在的位置:网站首页 python数组循环输出 给数组倒序

给数组倒序

#给数组倒序| 来源: 网络整理| 查看: 265

f5d9eeaf99175491ea683e45a0ffbce8.png 在本篇文章里小编给大家整理的是关于Python列表倒序输出及其效率详解内容,需要的朋友们学习下。

Python列表倒序输出及其效率

方法一

使用Python内置函数reversed()

for i in reversed(arr): pass

reversed返回的是迭代器,所以不用担心内存问题。

方法二

使用range()倒序

for i in range(len(arr) - 1, -1, -1): pass

方法三

先使用list自带的reverse()函数,再用range()循环

arr.reverse() for i in range(len(arr)): pass

因为要先倒序,再循环,所以效率会比较低。

方法四

先使用list自带的sort()函数来倒序,再用range()循环

arr.sort(reverse=True) for i in range(len(arr)): pass

因为要先排序,再循环,所以效率会比较低。

这里不讨论Python内置函数sorted(),它的效率比list自带的sort()函数要慢。

效率

对比代码

a7db2d3443971a7331cfd8e3eb52c893.png

对比结果

数组长度为一百万时(跑了三次):

b65c069f71b6b917a7ec56aaaf557b23.png

6c68b2eabd30edc7aa83d1fbe4cac8da.png

dc10d239a4e0076a5786594b6630c4a5.png

数组长度为一千万时(跑了两次):

4d304407e52e04eb9e57befdc68e1d32.png

86a492995c844e5278764b780fec4bd9.png

数组长度为一亿时(跑了两次):

c027414c3d5284921fe8823433d6a8d2.png

ddbc7dc4e51c1fd7333ccfc24e0fd358.png

结论:

效率:方法一 > 方法二 > 方法三 > 方法四

然而并不差多少emmm

但还是尽量使用迭代器吧,数据量很大的时候不用迭代器的话有可能会占用过多的内存。

以上就是本文的全部内容,希望对大家的学习有所帮助!!!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3