数据结构与算法
kuang5683608
这个作者很懒,什么都没留下…
展开
-
动态查找树比较
<br />http://www.iteye.com/topic/614070<br /> <br />我们这个专题介绍的动态查找树主要有: 二叉查找树(BST),平衡二叉查找树(AVL),红黑树(RBT),B~/B+树(B-tree)。这四种树都具备下面几个优势:<br />(1) 都是动态结构。在删除,插入操作的时候,都不需要彻底重建原始的索引树。最多就是执行一定量的旋转,变色操作来有限的改变树的形态。而这些操作所付出的代价都远远小于重建一棵树。这一优势在《查找结构专题(1):静态查找结构概论 》中讲到原创 2011-04-19 15:22:00 · 379 阅读 · 0 评论 -
整理一下图算法
<br />1.图算法我们首先要区分有向图与无向图,有的算法是对应有向图的,有的对应无向图的。<br />图的表示方法,无向图邻接矩阵,邻接表,十字链表。有向图邻接矩阵,邻接表,逆邻接表,十字链表。<br /> <br />2.图算法的最基本应用应该是搜索算法了,也是遍历问题,DFS,BFS两种。这让我想到算法设计里的常用两个算法设计策略,回溯法与分支界限法。两种都有递归与非递归算法。递归算法很耗资源的,耗栈资源,需慎用。非递归算法需而外的数据结构支持,如队列,栈。与图的连通性有关,可用来求最大连通子图,有原创 2011-04-21 12:29:00 · 466 阅读 · 0 评论 -
海量数据
<br /><br />1.问题实例:给你A,B两个文件,各存放50亿条URL,每条URL占用64字节,内存限制是4G,让你找出A,B文件共同的URL。如果是三个乃至n个文件呢?<br /> 根据这个问题我们来计算下内存的占用,4G=2^32大概是40亿*8大概是340亿,n=50亿,如果按出错率0.01算需要的大概是650亿个bit。现在可用的是340亿,相差并不多,这样可能会使出错率上升些。另外如果这些urlip是一一对应的,就可以转换成ip,则大大简单了。<br /> <br />解答:1.首先读取原创 2011-04-21 16:20:00 · 349 阅读 · 0 评论