社区
数据结构与算法
帖子详情
关于Fibonacci堆的mark域的问题?
zhxlianxin
2013-12-21 05:21:09
最近看到<算法导论>上Fibonacci堆那章,还一个疑问.
mark具体有什么用处.
之后为什么要级联切断??直接将x移除到根表这样也可以吧,百思不得其解呀?
...全文
197
1
打赏
收藏
关于Fibonacci堆的mark域的问题?
最近看到上Fibonacci堆那章,还一个疑问. mark具体有什么用处. 之后为什么要级联切断??直接将x移除到根表这样也可以吧,百思不得其解呀?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
FancyMouse
2014-01-10
打赏
举报
回复
>mark具体有什么用处 为了减少Fib堆基本操作的次数。 >直接将x移除到根表这样也可以吧 x是什么东西
斐波那契
堆
(
Fibonacci
Heap)
也许我们每个人都知道斐波那契数列(
Fibonacci
sequence)。即这样一个数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...,如果我们用伪代码比表示: int
Fibonacci
Sequence(int n){ if (n == 1 || n == 2) { return 1; } return
斐波那契
堆
(
Fibonacci
heaps)
转自:http://www.360doc.com/content/12/0710/17/110467_223416306.shtml 斐波那契
堆
同二项
堆
一样,也是一种可合并
堆
。斐波那契
堆
的优势是:不涉及删除元素的操作仅需要O(1)的平摊运行时间(关于平摊分析的知识建议看《算法导论》第17章)。和二项
堆
一样,斐波那契
堆
由一组树构成。这种
堆
松散地基于二项
堆
,说松散是因为:如果不对斐波那契
堆
做任何
算法导论 第20章 斐波那契
堆
一、概念 1.斐波那契
堆
斐波那契
堆
是可合并
堆
在不涉及删除的操作(除去EXTRACT和DELETE)中,操作仅需O(1)的平摊运行时间 当EXTRACT和DELETE的操作数目较小时斐波那契
堆
能得到较好的运行效率。 斐波那契
堆
不能有效地支持SEARCH操作 用于解决诸如最小生成树和寻找单源最短路径等
问题
的快速算法都要用到斐波那契
堆
。 2.斐波那契
堆
的结构 斐波那契
堆
由一...
数据结构——斐波那契
堆
Fibonacci
Heap(C语言)
前一篇博文记录了二项
堆
的一些操作,本文介绍与之相似的
堆
结构——斐波那契
堆
。 斐波那契
堆
是可合并
堆
,一些操作可以在常数滩还时间内完成,而二项
堆
中的一些操作需要O(lgn); 定义 一个斐波那契
堆
是一序列具有最小
堆
序的有根树的集合。也就会说,每棵树都遵循最小
堆
性质:每个节点的关键字不小于它父节点的关键字。 注:斐波那契
堆
里的树可以不说二项树,并且根链表是无序的。 结构 斐波那契
堆
是由一
斐波那契
堆
斐波那契
堆
同二项
堆
一样,也是一种可合并
堆
。相对于二项
堆
,斐波那契
堆
的优势在于如果不涉及删除元素的操作,则它的平摊运行时间为O(1)。但是由于其算法过于复杂, 因而实际上更多的是用二项
堆
。 一、定义 一个斐波那契
堆
具有如下性质:
堆
有一组有序树组成,但是
堆
中的树不一定是二项树斐波那契
堆
中的树之间是无序的(二项
堆
中的树是按照其包含的二项树的度数排序的)
堆
中每个节点的数据结构包含如下
域
:
数据结构与算法
33,008
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章