
算法
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
什么是红黑树?
写这篇红黑树算法的目的:一是为了自己学习的总结;二是能够与大家一起交流沟通一起努力。文中有些内容学习自《算法导论》一书,部分来自于维基百科,我会在文中标注出来,有不明白的地方可以通过留言大家一起沟通。 首先,什么是红黑树呢? 红黑树是一种“平衡的”二叉查找树,它是一种经典高效的算法,能够保证在最坏的情况下动态集合操作的时间为O(lgn)。红黑树每个节点包含5个域,分别为color,原创 2011-10-17 21:25:12 · 16108 阅读 · 5 评论 -
暴雪游戏(Blizzard)的高效哈希算法
最近需要研究下文本搜索和字符串匹配算法,想到哈希的搜索性能不错,于是查找有关哈希搜索方面的算法,有幸见到rainleaf的大作,确实不错,转载至此供大家学习进步!原文如下:(原文地址:http://blog.csdn.net/eaglewood2005/archive/2009/07/30/4394583.aspx ) 近期由于需要,研究了魔兽文件打包管理器的相转载 2013-04-07 22:58:24 · 1526 阅读 · 0 评论 -
红黑树-插入删除
操作因为每一个红黑树也是一个特化的二叉查找树,因此红黑树上的只读操作与普通二叉查找树上的只读操作相同。然而,在红黑树上进行插入操作和删除操作会导致不再符合红黑树的性质。恢复红黑树的属性需要少量(O(log n))的颜色变更(实际是非常快速的)和不超过三次树旋转(对于插入操作是两次)。虽然插入和删除很复杂,但操作时间仍可以保持为 O(log n) 次。插入我们首先以二叉查找树的方法增加节转载 2013-04-11 23:39:27 · 1097 阅读 · 0 评论 -
编程珠玑之生成0至n-1之间的k个不同随机序列的扩展问题 --2014人人网笔试题目
《编程珠玑》中习题1.4的题目是:“如果认真考虑了习题3,你将会面对生成小于n且没有重复的k个整数的问题。最简单的方法就是使用前k个正整数。这个极端的数据集合将不会明显的改变位图方法的运行时间,但是可能会歪曲系统排序的运行时间。如何生成位于0至n - 1之间的k个不同的随机顺序的随机整数?尽量使你的程序简短高效。” 解决这个问题可以使用以空间换时间的方式,基本的思想是 利用洗牌的原理,原创 2013-09-25 10:16:52 · 2850 阅读 · 0 评论