一、常用集合
1、HashMap
實現原理:
https://juejin.im/post/5c1c79b16fb9a049a711c97c
線程不安全:
https://blog.csdn.net/swpu_ocean/article/details/88917958
java8中紅黑樹的實現
https://www.cnblogs.com/finite/p/8251587.html
2、TreeMap
實現原理:
https://www.jianshu.com/p/94acb78a8a4f
二、併發容器
https://www.cnblogs.com/klbc/p/9799672.html
1、ConcurrentHashMap
工作原理:
https://www.jianshu.com/p/d10256f0ebea
https://blog.csdn.net/qq_39662660/article/details/91898047
2、CopyOnWriteArrayList (複製數組,volidate, ReentrentLock)
https://blog.csdn.net/u010002184/article/details/90452918
三、數據結構
https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
1、二叉樹
在線演示:
https://www.cs.usfca.edu/~galles/visualization/BST.html
二叉樹介紹:
https://blog.csdn.net/lipinganq/article/details/78871683
二叉樹的java實現
https://www.cnblogs.com/rainple/p/9970760.html
二叉樹的遍歷方式
https://www.jianshu.com/p/f5f1b271b179
遍歷圖解:
https://www.jianshu.com/p/55763ece5de5
深度遍歷和廣度遍歷
https://www.jb51.net/article/138495.htm
前序遍歷(根-左-右),優先遍歷左邊節點,在遍歷右節點
中序遍歷(左-根-右),從最左開始,到父節點,再到右節點
後序遍歷(左-右-根),最後找根節點
二叉樹的層次(最大/最小)深度
https://www.cnblogs.com/LcMiho/p/10113516.html
二叉樹子節點數
https://blog.csdn.net/cherrybomb1111/article/details/78060438
2、紅黑樹
在線演示:
https://www.cs.usfca.edu/~galles/visualization/RedBlack.html
3、BTree (B+Tree)
https://blog.csdn.net/u013967628/article/details/84305511
https://www.cnblogs.com/dongguacai/p/7241860.html
https://www.jianshu.com/p/ac12d2c83708
https://blog.csdn.net/Double2hao/article/details/87435053