您当前的位置: 首页 >  数据结构与算法

星拱北辰

暂无认证

  • 0浏览

    0关注

    1205博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【数据结构与算法】二项队列与二叉堆的比较

星拱北辰 发布时间:2020-02-23 14:42:10 ,浏览量:0

导语

二叉堆确实是入门级的重要数据结构了,而二项队列也是慢慢要去掌握的一种支持高效合并的优先队列实现。本文稍作比较,望抛砖引玉。

列个表格比较基本操作性能 基本操作 insert(平均) deleteMin/deleteMax merge 二项队列 O(1) O(logN) O(logN) 二叉堆: O(1) O(logN) O(N)

不难看出,二项队列merge操作优势明显。

二叉堆插入O(1)的解释如下

说明:二叉堆插入也是 O(1) 这点,我其实原本不太敢写,因为网搜确实都写是O(logN),但大家这么想就能理解了(因为我们说的是平均情况): 二叉堆建堆的时间复杂度是O(N),除以逐一插入的N个元素,就平均是O(1)。 准确地说,O(logN)其实是最坏情况。

Merge操作的性能比较

对于二项队列而言,它可以弥补二叉堆的在合并操作上的“低效”。

关注
打赏
1660750074
查看更多评论
立即登录/注册

微信扫码登录

0.0658s