
算法
iteye_5484
这个作者很懒,什么都没留下…
展开
-
2-3树的C实现
B树一个Node可以有N个key, N+1个下级Node, 二叉树就是简化版,一个key两个下级node 2-3树和2-3-4树的区不大,2-3树在插入时先找到叶子节点(没有子节点),然后插入,过程中如果已经是3Node(2 key)就分裂,向上冒泡,一直可能冒泡到顶上。 2-3-4树则在向下找叶子节点时就做调整,把4Node(3 key)提前分裂掉,为下级节点腾出空间,所以叶子节点插入后...原创 2017-03-26 19:39:29 · 638 阅读 · 0 评论 -
瞎掰一个效率最高的整数排序算法,bitmap排序,时间复杂度O(n)
先上结果,速度上秒掉各种排序: 1e4 Straight Insertion: 0.109916 Sec 1e4 Bitmap sorting : 0.000214 Sec 1e8 Bitmap sorting : 6.568575 Sec 前提条件是一般测试数据偏差不大,因此可以用bitmap来标记数据,标记完了自然就排序完成。比堆排序还要快一两个数量级。 缺点也很明显...原创 2017-03-27 01:59:13 · 606 阅读 · 0 评论 -
原创算法: 字符串查找匹配
从来没想过枯燥的算法居然也能上瘾。 字符串匹配是不是可以这么做,类似于hash, 但是更快 1. hash算法简化,比如取每个字符相加, 2. key长度len, 从0开始,取前len个字符hash 3. while (hash不一致 || 逐个字符比较不一致) && 没到字符串末尾 5. hash减掉当前字符,加上len+1位置字符 --------------------...原创 2017-03-28 23:12:50 · 261 阅读 · 0 评论 -
继续玩算法:两个字符串中有没有不一致的字符?
闲着无聊在微信上看到一个皮裤子面试算法的问题,面试者Paul后来用皮裤子的算法赢得了Google的职位。题目如下: 假设这有一个各种字母组成的字符串,假设这还有另外一个字符串,而且这个字符串里的字母数相对少一些。从算法是讲,什么方法能最快的查出所有小字符串里的字母在大字符串里都有? 比如,如果是下面两个字符串: String 1: ABCDEFGHLMNOPQRS Stri...原创 2017-03-29 22:49:25 · 263 阅读 · 0 评论