gpt4 book ai didi

algorithm - 链表和数组的堆排序实现

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:39:14 24 4
gpt4 key购买 nike

堆排序可以使用链表和数组来实现。

使用链表或数组的理想方法是什么?

使用数组和链表构建堆的时间复杂度是多少?两者都是O(nlogn)吗?

删除的时间复杂度是多少?

最佳答案

对于数组,是O(nlogn)。因为你可以很容易地获取索引 i 处的元素。这个特性使得获取每个节点的父节点和左/右子节点变得容易。删除的时间复杂度为O(lgn)。

对于链表,我认为是另一回事。这取决于您如何定义“下一个”节点。据我所知,它比使用数组更复杂。

关于algorithm - 链表和数组的堆排序实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14584149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com