
大家好,我是哪吒。
一、链表
从数组中间删除一个元素开销很大,其原因是向数组中插入元素时,此元素之后的所有元素都要向后端移动,删除时也是,数组中位于被删除元素之后的所有元素都要向数组的前端移动。

此时,在Java中,可以通过链表解决这个问题。
数组是在连续的存储位置上存放对象引用,而链表则是将每个对象存放在单独的链接link中。每个链接还存放着序列中下一个链接的引用。在Java中,所有的链表都是双向链接,即每个链接还存储前驱的引用。

在链表中新增、删除一个元素是很轻松的操作,只需要更新锁删除元素前后对应的链接即可。

有的同学可能觉得上面两个图,没啥区别,其实就是前后链接指向的问题,so easy。
在Java中,可以使用双指针法来向链表中间添加元素。

本文详细介绍了Java中四种重要的集合类型:链表、散列表、HashSet和TreeSet。文章讲解了链表在元素增删上的优势,散列表的快速查找原理以及负载因子的概念,HashSet的实现基础——散列表,以及TreeSet基于红黑树的排序特性及其常用操作。通过对这些集合类型的理解,有助于提升Java编程能力。
订阅专栏 解锁全文
7715

被折叠的 条评论
为什么被折叠?



