--1.1.Data Structure
文章平均质量分 84
leoIsCoding
Github : [ https://github.com/leoChaoGlut ]
Email : [ leoIsCoding@163.com ]
展开
-
jdk1.8 HashMap性能提升
原文链接:http://it.deepinmind.com/%E6%80%A7%E8%83%BD/2014/04/24/hashmap-performance-in-java-8.htmlHashMap是一个高效通用的数据结构,它在每一个Java程序中都随处可见。先来介绍些基础知识。你可能也知道,HashMap使用key的hashCode()和equals()方法来将值划分到不同的桶里。桶转载 2015-09-04 21:03:43 · 6036 阅读 · 2 评论 -
Hash算法及应用
转载 2016-10-03 16:35:04 · 375 阅读 · 0 评论 -
B-tree/B+tree/B*tree
B~树 1.前言:动态查找树主要有:二叉查找树(Binary Search Tree),平衡二叉查找树(Balanced Binary Search Tree),红黑树 (Red-Black Tree ),B-tree/B+-tree/ B*-tree (B~Tree)。前三者是典型的二叉查找树结构,其查找的时间复杂度O(log2N)与树的深度相关,那么转载 2016-07-05 14:14:13 · 890 阅读 · 0 评论 -
布隆过滤器原理和例子
布隆过滤器用于字符串去重复,比如网络爬虫抓取时URL去重、邮件提供商反垃圾黑名单Email地址去重。等等。用哈希表也可以用于元素去重,但是占用空间比较大,而且空间使用率只有50%。 布隆过滤器只占哈希表的1/8或1/4的空间复杂度,就能解决同样的问题,但是有一定的误判,而且不能删除已有元素。元素越多,误报率越大,但是不会漏报。对于还需要删除的布隆过滤器,还有Counter Bloom Fil转载 2016-07-10 15:48:43 · 2290 阅读 · 0 评论 -
Java实现字典树TrieTree
为了准备阿里的网上笔试,这几天回顾了数据结构.看到字典树时,突然发现四六级的高频词可以用字典树找出来的.(应该不会是一个一个数出来的吧....)构造字典树的过程如下:1.首先确定树节点需要用怎么样的数据结构,我是这样写的:public class TrieTreeNode { /** * 节点深度 */ public short depth; /** * 存放当前节点原创 2015-08-19 13:04:45 · 6929 阅读 · 1 评论 -
Java实现二叉排序树
定义:二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)没有键值相等的节点。说明:可实现:构造树,插入,查找,删除.通过模式的选择,可以插入值相等的点.但是不建原创 2015-09-02 18:50:57 · 2265 阅读 · 0 评论 -
jdk1.8 LinkedList增删改的过程
1.LinkedList由N个Node构成,Node结构代码如下:private static class Node { E item; Node next; Node prev; Node(Node prev, E element, Node next) { this.item = element;原创 2015-09-05 10:28:46 · 2476 阅读 · 0 评论 -
极易理解的红黑树讲解
原文链接:http://www.cnblogs.com/abatei/archive/2008/12/17/1356565.htmlC#与数据结构--树论--红黑树(RED BLACK TREE) 介绍今天我们来介绍另一种平衡二叉树:红黑树(Red Black Tree),红黑树由Rudolf Bayer于1972年发明,当时被称为平衡二叉B树(symmetric bina转载 2015-09-10 17:04:10 · 3824 阅读 · 1 评论 -
HashMap遍历效率测试
测试环境:win8.1 64bit CPU:Intel 奔腾3560M 2.4GHz内存:8G 1600MHz硬盘:三星SSD 256G1.遍历测试,分别用keySet和entrySet做测试,测试代码如下:@Test public void test() { int i, N = 2000001, testTimes = 100; long start, e原创 2015-07-16 11:03:20 · 1671 阅读 · 0 评论 -
jdk1.8 HashMap简介翻译
翻译的不好,还请见谅.. * Hash table based implementation of the Map interface. This * implementation provides all of the optional map operations, and permits * null values and the null key. (The Has翻译 2015-09-04 19:46:13 · 1570 阅读 · 0 评论 -
MySql索引算法原理解析(通俗易懂,只讲B-tree)
刚开始学习的时候,百度去查,但发现好多说得太复杂不好理解,结合各个文章总结一下(建议大概看文字,不理解不要紧,然后再看图的执行步骤然后在结合文字,这样一切就清晰好多)B-tree,B是balance,一般用于数据库的索引。使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度。而B+tree是B-tree的一个变种,大名鼎鼎的MySQL就普遍使用B+tree实现其索引转载 2016-08-25 17:23:23 · 901 阅读 · 0 评论