LinkedList

LinkedList是Java中一种常用的数据结构,它使用双向链表实现。

特点:

  高效的插入和删除操作:LinkedList在列表的头部和尾部进行添加和删除操作的复杂度为O(1),高效且方便。

  动态大小:LinkedList的大小可以根据需要自动调整,无需手动分配内存。

  支持null元素:LinkedList允许插入和删除null元素。

  迭代顺序:LinkedList的迭代器按照链表的插入顺序进行迭代。

LinkedList适用于需要频繁插入和删除元素的情况,但LinkedList不支持随机访问,获取元素的复杂度为O(n),因此如果需要频繁访问元素,建议使用ArrayList。

LinkedList可以通过Node类实现,每个节点包含一个数据域和两个指针,分别指向前一个节点和后一个节点。LinkedList类中维护了一个头节点和尾节点的指针,方便进行添加和删除操作。

JDK中LinkedList的方法:

复制代码
boolean add(E e)    //尾插e

void add(int index,E element)    //将e插入到index位置

boolean addAll(Collection<? extends E> c)    //尾插c中的元素

E remove(int index)    //删除Index位置的元素

boolean remove(Object o)    //删除遇到的第一个o

E get(int index)    //获取下标index位置的元素

E set(int index,E element)    //将下标为index位置的元素设置为element

void clear()    //清空

boolean contains(Object o)    //判断o是否在线性表中

int indexOf(Object o)    //返回第一个o所在下标

int lastIndexOf(Object o)    //返回最后一个o所在下标

List<E>subList(int fromIndex,int toIndex)    //截取部分list
复制代码

方法实现代码示例:

复制代码
import java.util.LinkedList;  
  
public class LinkedListExample {  
    public static void main(String[] args) {  
        // 创建一个空的LinkedList  
        LinkedList<String> list = new LinkedList<String>();  
  
        // 在列表的头部添加元素  
        list.addFirst("Hello");  
  
        // 在列表的尾部添加元素  
        list.addLast("World");  
  
        // 在列表的指定位置插入元素  
        list.add(1, "Java");  
  
        // 获取列表的大小  
        int size = list.size();  
        System.out.println("Size: " + size);  
  
        // 获取列表中的元素  
        String element = list.get(0);  
        System.out.println("Element at index 0: " + element);  
  
        // 删除列表中的元素  
        list.remove(1);  
        System.out.println("After removing element at index 1:");  
        for (String s : list) {  
            System.out.println(s);  
        }  
    }  
}
复制代码
posted @   kandhera  阅读(23)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示