![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构及排序算法
Bolon0708
昨日已成过往,明日未来可期。
展开
-
【两万字】面试官:听说你很懂集合源码,接我二十道问题!
【高能预警】:两万字长文,建议先收藏再看,深度源码分析,二十个问题带你一网打尽集合面试。问题一:看到这个图,你会想到什么?(PS:截图自《编程思想》)答:这个图由Map指向Collection的Produces并不是说Map是Collection的一个子类(子接口),这里的意思是指Map的KeySet获取到的一个视图是Collection的子接口。我们可以看到集合有两个基本接口:Map和Collection。但是我个人认为Map并不能说是一个集合,称之为映射或许更为合适,因..转载 2020-06-28 15:13:00 · 363 阅读 · 0 评论 -
几张动态图清晰展示常用数据结构及其设计原理
最近在整理数据结构方面的知识,系统化看了下Java中常用数据结构,突发奇想用动画来绘制数据流转过程。主要基于jdk8,可能会有些特性与jdk7之前不相同,例如LinkedList LinkedHashMap中的双向列表不再是回环的。HashMap中的单链表是尾插,而不是头插入等等,后文不再赘叙这些差异,本文目录结构如下:排序算法详情及动图请点击进入...转载 2019-04-30 16:21:13 · 1045 阅读 · 0 评论 -
还在为面试发愁吗?这里有动态图解十大经典排序算法。
之前的一篇几张动态图清晰展示常用数据结构及其设计原理发出来之后反响不错,这次来个动图排序算法大全。数据结构与算法,算是齐了!本文将采取动态图 + 文字描述 + Java代码实现来讲解以下十大排序算法: 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序...转载 2019-04-30 16:18:15 · 285 阅读 · 0 评论 -
30张图带你彻底理解红黑树
目录写在前面正文写在后面写在前面当在10亿数据中只需要进行10几次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。终于,在学习了几天的红黑树相关的知识后,我想把我所学所想和所感分享给大家。红黑树是一种比较难的数据结构,要完全搞懂非常耗时耗力,红黑树怎么自平衡?什么时候需要左旋或右旋?插入和删除破坏了树的平衡后怎么处理?等等一连串的问题在学习前困...转载 2019-08-05 11:54:30 · 241 阅读 · 0 评论 -
阿里P8架构师谈:深入探讨HashMap的底层结构、原理、扩容机制
目录简介内部实现存储结构-字段功能实现-方法1. 确定哈希桶数组索引位置2. 分析HashMap的put方法3. 扩容机制线程安全性JDK1.8与JDK1.7的性能对比Hash较均匀的情况Hash极不均匀的情况小结HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit...转载 2019-08-02 13:13:50 · 399 阅读 · 0 评论 -
【数据结构】18张图带你彻底搞定面试要考的数据结构!
目录数组栈队列链表字典集合散列表/哈希表二叉查找树图数据结构是计算机存储、组织数据的方式。数据结构是指相互直接存在一种或多种特殊关系的数据元素的集合。通常情况下,精心选择数据结构可以带来更高的运行或者存储效率。作为一名程序猿,更需要了解下数据结构。讲到数据结构,我们都会谈到线性结构和非线性结构。1.线性结构是一个有序数据元素的集合。它应该...转载 2019-07-16 20:27:59 · 426 阅读 · 0 评论