![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
子之乐鱼之乐
偷得浮生半日闲
展开
-
哈希之开散列,闭散列,多阶哈希,一致性哈希
https://blog.csdn.net/xxpresent/article/details/55806298 哈希表(闭散列、拉链法–哈希桶) https://blog.csdn.net/qq_38646470/article/details/79417829 拉链法 https://blog.csdn.net/a519640026/article/details/76157944 一致性HA...转载 2019-08-12 14:21:48 · 278 阅读 · 0 评论 -
多线程下ThreadLocal的使用
ThreadLocal入门 ThreadLocal是什么 首先,它是一个数据结构,有点像HashMap,可以保存key-value键值对,但是一个ThreadLocal只能保存一个,并且各个线程的数据互不干扰。 ThreadLocal<String> localValue = new ThreadLocal(); localValue.set("Here is a value"); S...转载 2019-09-06 15:48:56 · 514 阅读 · 0 评论 -
树 特性比较
二叉搜索树 平衡二叉树 红黑树 B树 B+树的简单对比 名称 简称 特点 平衡性 查找 插入 删除 优势 应用 二叉搜索树 BST 索引树,由于构建不稳定,查找效率不稳定 无 不稳定,跟具体构建树相关,最好O(logn),最差O(N) 直接插入 删除的是叶子节点或只有左或右子树比较简单,如同时存在左右子树,那么要找到前驱或后继代替原先节点,再删除 性能高于线性查找 暂无 平衡二...原创 2019-08-29 14:34:40 · 96 阅读 · 0 评论 -
简单的利用正则对字符串进行格式化并去除字母及中文字符外的特殊符号
样例 public static String replace(String str) { if(str==null){ return null; }else if(StringUtils.isBlank(str)){ return ""; } String regEx = "...原创 2019-08-28 11:14:09 · 713 阅读 · 0 评论 -
迭代器常见使用与集合遍历
迭代器常见使用手段前言List的遍历Map的遍历 前言 此处主要介绍对于List及Map的遍历方式。 List的遍历 //第一种:for循环,指定下标长度,使用List集合的size()方法,进行for循环遍历 for (int i = 0; i < list.size(); i++) { String temp=list.get(i); ... } //第二种:...原创 2019-08-28 11:09:04 · 350 阅读 · 0 评论 -
Java NIO内存映射文件
Java NIO 内存映射文件文件操作的四大方法 文件操作的四大方法 前提:内存的访问速度比磁盘高几个数量级,但是基本的IO操作是直接调用native方法获得驱动和磁盘交互的,IO速度限制在磁盘速度上 由此,就有了缓存的思想,将磁盘内容预先缓存在内存上,这样当供大于求的时候IO速度基本就是以内存的访问速度为主,例如BufferedInput/OutputStream等 而我们知道大多数OS...转载 2019-08-13 10:12:42 · 301 阅读 · 0 评论 -
深复制浅复制
深复制与浅复制: 本质上都是基于原型模式的理念, 复制本身即是以原对象的数据及结构为原型进行拷贝, 深复制即是对于对象及其子对象(数据与结构)的完全克隆,而浅复制只是对对象本身克隆。 Java中: 浅复制只需对象实现cloneable接口即可,接口中对于clone()的实现即是浅复制; 深复制则需重写clone()方法或自定义方法,一般最简单的深复制实现是将对象整个序列化为流式数据后再反序列化为O...原创 2019-08-13 09:52:30 · 151 阅读 · 0 评论 -
Hbase总结
1.类数据库存储层(结构化存储) 2.分布式的Hbase依赖于HDFS 3.与Hive相比性能更高,容错性更强,具有及时性;但不支持SQL(Hive适用于静态数据分析工作) 4.Poenix是使用Hbase的好帮手 5.与传统数据库相比: HBase RDBMS 硬件架构 类似于 Hadoop 的分布式集群,硬件成本低廉 传统的多核系统,硬件成本昂贵 容错性 由软件架构实现,由...原创 2019-08-12 16:12:30 · 106 阅读 · 0 评论 -
红黑树总结
红黑树与AVL树的区别: AVL树是严格要求平衡度(最大左右子树高度差异)的二叉搜索树,这导致了一种情况,AVL树在使用过程中,面临插入与删除时会导致大量的平衡操作,消耗大量性能,因此降低了可用性; 红黑树相较于AVL树,放低了对于左右子树平衡的要求(红黑节点可以为均衡左右子树的平衡做出缓冲,即通过将黑节点变红降低树的高度,从而延缓了高度产生较大差异而被迫平衡的操作) 因此在实际使用中,红黑树可以...原创 2019-08-12 15:03:33 · 103 阅读 · 0 评论 -
红黑树
https://www.cnblogs.com/ysocean/p/8004211.html 图片较多建议连接查看 上一篇博客我们介绍了二叉搜索树,二叉搜索树对于某个节点而言,其左子树的节点关键值都小于该节点关键值,右子树的所有节点关键值都大于该节点关键值。二叉搜索树作为一种数据结构,其查找、插入和删除操作的时间复杂度都为O(logn),底数为2。但是我们说这个时间复杂度是在平衡的二叉搜索树上体...转载 2019-08-12 15:00:49 · 99 阅读 · 0 评论 -
去重——List如何去(简单比较、重写Equals()、实现Comparable接口的排序)
List去重简单类型的去重代码示例运行结果与分析对于复杂类型——对象的去重复杂类型比较的基础介绍重写Equals()方法原有EqualsComparable接口实现 简单类型的去重 代码示例 List list = Arrays.asList(1,232,3,2,4,3,534,57,56,8,567,7,45,321,4,234,23,5,45,7,6,978,4,523,4,21,3,45,...原创 2019-09-09 13:11:33 · 1398 阅读 · 0 评论