algorithm - 关于max-heapify时间复杂度的一个问题
问题描述
每个人。我刚来这地方。
我正在使用 Thomas H. Cormen 等人撰写的“算法简介”自学算法。我遇到了一个让我很困惑的问题,所以我来这里寻求帮助。如果有人可以帮助我,我将非常感激。
问题是关于 max-heapify 的复杂性。这是那本书第6章的练习,它说
证明 MAX-HEAPIFY 在大小为 n 的堆上的最坏情况运行时间为 (lgn)。lg 是以 2 为底的对数。
谁能向我解释为什么复杂性是(lgn)?为什么没有像 O(lgn) 这样的上限?
书上说MAX-HEAPIFY的运行时间是O(lgn),我理解是因为树的高度是O(lgn),但是为什么会因为最坏的情况而变成(lgn)呢?
解决方案
推荐阅读
- geometry - Earth Engine 中几何的意外行为
- reactjs - 在 Material v5 中使用 X-grid
- git - 如何撤消还原和保存文件 (SmartGit)
- python - 多次拟合时 keras fit() 的历史
- python - 从 Batch 中使用 Pythonw 启动 Python 脚本并赋予其焦点
- json - Dart 未处理的异常:类型 '_InternalLinkedHashMap
' 不是类型 'Iterable 的子类型 - javascript - javascript通过多个选项值更新表单字段
- vue.js - 为什么当我将 v-dialog 放在 v-for 中时,我无法多次单击,它会使 firefox 变慢
- javascript - 计算相对于我的位置的位置旋转
- c# - C# 不断发送击键