Tyche_BO 2019-05-18 21:35 采纳率: 0%
浏览 646
已采纳

python 中直接创建一个列表快还是一项一项添加快

python 中直接创建一个列表快还是一项一项添加快

比如:

#第一种
a=[]
for x in rang(1,100):
    a.append(x)

#第二种是直接手打
a=[1,2,3,4,5,6,....,100]

     想知道这两种创建列表的方法那种更快,因为现在要创建N个类似的列表,列表内

容为另一个列表内的数值运算,然后把这N个列表当成一个元素嵌套在另一个列表内

所以想请教下那种方法比较好比较有效率。后期涉及数据量几百万行以上,不想程序运行太慢
谢谢了 各位老大

  • 写回答

3条回答 默认 最新

  • 北冥有鱼wyh 2019-05-19 06:30
    关注

    1、第一种的时间复杂度是O(n),第二中的时间复杂度是O(1)。
    2、当创建n个类似的列表时,相当于在代码前添加了一个循环。故第一种的时间复杂度是O(n^2),第二中的时间复杂度是O(n)。
    3、n越大,时间复杂度间区别越大。当n等于一百万时,第一种可能运行上亿次,而第二种依旧只执行一百万次。
    由此总结:第二种时间用时较少,且创建次数越多,相比较第一种用时就越少。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?