作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
假设我有一个具有 N 个节点的常量(一旦构建就不会改变)平衡树,每个内部节点都有 p 个子节点。显然,访问节点的最坏情况是 logp(N)。但是访问 r 个节点的摊销成本呢?如果我们按升序访问它们(有一个搜索树)怎么办?它只是 (logp(N))/r 吗?
最佳答案
您当然可以计算访问平衡搜索树中每个元素的摊销成本。但是,您会发现“几乎所有”节点都位于树的底部。 (更准确地说,对于完整的 p
二元树,节点的 1/p
不是叶子)。因此,所有访问的平均成本将(大致)为叶访问的成本 (log<sub>p</sub>n
),这与最坏情况的成本相同。
关于algorithm - (固定)平衡树的摊销成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15351021/
我只是想在继续之前向某人确认我走在正确的轨道上。问题指出,当我想向已经满的数组添加新元素时,我必须“在 O(1)(amortized) 中扩展数组”。 这是不是说每次我将一个新元素插入到完整列表中时,
我试图从复杂性的角度更好地理解哈希表和字典在 C# 中的工作方式(但我想语言不是一个重要因素,这可能只是一个理论问题)。 我知道如果 Count 小于容量(这有点明显)。 不过,让我们看看这段代码:
我是一名优秀的程序员,十分优秀!