首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >快速排序算法:需要知道以下代码的时间复杂度,以及是否进行了优化

快速排序算法:需要知道以下代码的时间复杂度,以及是否进行了优化
EN

Stack Overflow用户
提问于 2022-12-04 11:24:30
回答 1查看 30关注 0票数 -4

我在练习快速排序算法,我突然想出了这个解决方案,我需要知道这个算法的时间复杂度和空间复杂度,以及它是否被优化。

代码语言:javascript
运行
复制
def quickSort(arr):
    if len(arr) < 2:
        return arr
    else:

        pivot_index = 0
        swap_index = 0
        for i in range(1, len(arr)):
            if arr[pivot_index] > arr[i]:
                swap_index += 1
                if not swap_index == i:
                    arr[i], arr[swap_index] = arr[swap_index], arr[i]
        arr[pivot_index], arr[swap_index] = arr[swap_index], arr[pivot_index]
        return quickSort(arr[:swap_index]) + [arr[swap_index]] + quickSort(arr[swap_index + 1:])

print(quickSort([1,3,3,3]))
EN

回答 1

Stack Overflow用户

发布于 2022-12-04 12:17:15

这几页解释得很好。另外,通过对排序函数的时间和空间度量绘制一些图表,您将能够自己分析它。

https://www.geeksforgeeks.org/time-complexity-and-space-complexity/ https://iq.opengenus.org/time-and-space-complexity-of-quick-sort/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74675096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档