复习
文章平均质量分 88
在下小吉.
我心爱的花在那里,在那颗遥远的星星上。
展开
-
【容器源码篇】Map容器(HashTable,HashMap,TreeMap的特点)
首先根据哈希值和表的长度计算出节点在表中的索引位置,然后获取该位置上的节点。如果该节点存在但是下一个节点不为空,则遍历下一个节点,重复上述判断操作,直到找到相等的节点或者遍历结束。在函数内部,首先根据传入的map的大小计算出一个初始容量,并将其和11中的较大值作为Hashtable的容量,并设置加载因子为0.75。首先如果超过了数组的最大容量,那么就直接将阈值设置为整数最大值,然后如果没有超过,那就扩容为原来的2倍,这里要注意是oldThr原创 2024-03-29 18:52:56 · 1511 阅读 · 19 评论 -
【容器源码篇】Set容器(HashSet,LinkedHashSet,TreeSet的特点)
比较指定集合的比较器和当前集合的比较器是否相等,如果相等,则使用线性时间版本的添加方式:map.addAllForTreeSet(set, PRESENT)。添加、删除、包含操作的时间复杂度都是O(1):由于HashSet基于哈希表实现,对于添加、删除和包含操作的时间复杂度都是常数级别的,因此具有很高的性能。:HashSet不允许存储重复的元素,如果试图向HashSet中添加一个已经存在的元素,那么添加操作将会失败。:HashSet不保证集合中元素的顺序,即元素在集合中没有特定的顺序。原创 2024-03-28 22:52:50 · 1212 阅读 · 4 评论 -
【容器源码篇】List容器(LinkedList,ArrayList,Vector的特点)
unlinkFirst()方法 和 unlinkLast()方法首先获取第一个节点存储的元素和下一个节点的引用。将当前节点的item和next置为null,帮助垃圾回收。(如果不将其引用设为null,尽管该节点已经从链表结构中移除,但由于可能存在其他地方仍持有对该节点的引用,导致垃圾回收器无法正确判断其是否可回收)更新链表的第一个节点为下一个节点。如果下一个节点为空,则更新最后一个节点为null;否则更新下一个节点的prev(前一个)为null。原创 2024-03-27 23:18:35 · 1531 阅读 · 5 评论 -
【Git篇】复习git
Git是一种分布式版本控制系统,它可以追踪文件的变化、协调多人在同一个项目上的工作、恢复文件的旧版本等。原创 2024-03-27 23:13:53 · 665 阅读 · 0 评论