单纯的输出一下今天的学的东西:不知有没有用,高级数据结构和图算法

 


今天学习了一下《算法导论》高级数据结构和图算法



梳理一下今天说学,不知对大家有没有用


1:斐波那契堆:


这是一种最小堆,而且也是一种可合并堆,对于他的具体的结构我没有太是在意。而且对于SELECT和INSERT这两个操作比较复杂。


有两个性质:1,势函数(摊还分析中的一种)借用势函数可以将对于在斐波那契堆上的操作进行摊还分析,是的摊还的时间复杂度为O(lgn)

给定的势函数   &(H)=t(H)+2m(H)

其实我也没怎么学到多少斐波那契堆的知识。

2.van Emde Boasts 树

这个结构支持优先队列和一些其他的操作,而且在动态集合上的运行时间为(lglgn),打破了(lgn)的下界。

动态集合的基本方法的简单对比:直接寻址法:时间复杂度为(lgn)



叠加的二叉树:(lgn)


叠加的高度恒定的二叉树:(lglgn)

用的是根号n的特殊性:


原型的树——proto-vEB

就是将不相同的数据,进行递归分化,n为数据的个数,假设n等于2的幂,则将数据以根号n进行分化下一级,然后第二级在进行第二次分化,子树与双亲树的个数比为:1:根号n

改进的van-Emde-Boas 树:

将数据中的min和max不放进递归树,这样做可以将MINMUN和MAXMUN的操作的时间降为O(1)

可以在递归算法中,减少一个操作,用以判断x的后继是否是max的递归调用

判断是否为空树

3:图算法:

广度优先搜索和深度优先搜索:就是对数结构进行探寻,广度的话会一直将与节点相连的所有的节点探寻,之后再进入下一个节点进行探寻。深度优先的话就是从一个节点一直探寻到一个叶节点。一条相连的链接线,之后会到开始节点继续寻找下一条节点到其他页节点的路线。


好了就是这些,虽然不成系统,但是我在输出,我学的东西。

你可能感兴趣的:(单纯的输出一下今天的学的东西:不知有没有用,高级数据结构和图算法)