玩蛇网提供最新Python编程技术信息以及Python资源下载!

Python递归函数时间复杂度如何判断

比如这个python快排的时间复杂度该怎么算

def q_sort(l):
    if len(l)<=1:
        return l
    else:
        return q_sort([x for x in l[1:] if x<l[0]])+[l[0]]+q_sort([x for x in l[1:] if x>=l[0]])

时间复杂度还是 N * lgN. 这么看, 把qsort递归看成一棵树, 每一层都处理 N 个元素, 树高度 lgN.

不过 这个程序 空间上费的多了吧. 貌似也是 N * lgN

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd18750.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年05月12日 - 16时44分46秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules