摘要:
# Java中实现的栈or队列两种方式对比 我们知道,在Java中,可以直接使用`Stack`来实现栈,这是一种看到名字就会自动想到栈的类,但是现代Java编程中却不推荐使用`Stack`来实现栈,这是为什么?首先来看一下Java中的Collection接口继承图: ![](https://im 阅读全文
摘要:
# 并发编程实践 > ## 参考 > > - 《深入理解 Java 虚拟机》 > - 《实战 Java 高并发程序设计》 > - Guide to the Volatile Keyword in Java - Baeldung:[Guide to the Volatile Keyword in Ja 阅读全文
摘要:
# Java 魔法类 Unsafe 详解 > 本文整理完善自下面这两篇优秀的文章: > > - [Java魔法类:Unsafe 应用解析 - 美团技术团队 -2019open in new window](https://tech.meituan.com/2019/02/14/talk-about- 阅读全文
摘要:
# Java 常见并发容器总结 JDK 提供的这些容器大部分在 `java.util.concurrent` 包中。 - **`ConcurrentHashMap`** : 线程安全的 `HashMap` - **`CopyOnWriteArrayList`** : 线程安全的 `List`,在 阅读全文
摘要:
# JMM(Java 内存模型)详解 要想理解透彻 JMM(Java 内存模型),我们先要从 **CPU 缓存模型和指令重排序** 说起! ## 从 CPU 缓存模型说起 **为什么要弄一个 CPU 高速缓存呢?** 类比我们开发网站后台系统使用的缓存(比如 Redis)是为了解决程序处理速 阅读全文
摘要:
# Java 线程池详解 > 参考 > > - 《Java 并发编程的艺术》 > - [Java Scheduler ScheduledExecutorService ScheduledThreadPoolExecutor Example](https://www.journaldev.com/23 阅读全文
摘要:
# TOP K 问题 比如“从10亿个数字中找出最大的前100个数”,会怎么操作? 我们可以考虑使用小根堆(如果是求最小的前100个数,那么就可以使用大根堆),先顺序取出前100个,建立小根堆后,从第101个开始遍历,如果当前的数字小于小根堆的堆顶元素的话,那就直接丢弃,不考虑,如果是大于堆 阅读全文
摘要:
# 跳表及其实现 > 参考*https://zhuanlan.zhihu.com/p/339750543* ```java import java.util.Objects; import java.util.Random; import java.util.Stack; /** * 参考https 阅读全文
摘要:
# Dijkstra最短路径算法及其优化 > 图示过程可以参考[图文详解 Dijkstra 最短路径算法 (freecodecamp.org)](https://www.freecodecamp.org/chinese/news/dijkstras-shortest-path-algorithm-v 阅读全文
摘要:
# 按照Value排序的HashMap 直接上代码: ```java import java.util.*; public class ValueSortedMap> extends TreeMap { private static final long serialVersionUID = 1L; 阅读全文