美文网首页
链表 - LinkedList

链表 - LinkedList

作者: 反射弧长一光年 | 来源:发表于2019-01-04 12:52 被阅读0次

基本概念

链表和数组类似,但相比于数组,链表有动态大小。而且插入和删除的效率很高,只要O(1)的时间。但是链表的遍历效率并不高。
Java中,链表为LinkedList类,每个节点由内置静态类Node实现:

private static class Node<E> {
        E item;
        Node<E> next;
        Node<E> prev;
        Node(Node<E> prev, E element, Node<E> next) {
            this.item = element;
            this.next = next;
            this.prev = prev;
        }
}

这种链表为双向链表,每个节点储存它前面的节点,后面的节点,以及它自身的值。也可以去掉节点的prev属性,变为单向链表。

基本操作

Java中LinkedList类的方法。

LinkedList<Integer> l = new LinkedList<>();
l.size(); // 链表的长度
l.get(); // 返回链表某个位置的元素
l.add(); // 向链表某个位置添加元素
l.addFirst(); // 向链表头添加元素
l.addLast(); // 向链表尾添加元素
l.remove(); // 删除链表某个位置的元素

Lintcode相关题目

相关文章

  • LinkedList源码学习分析

    1.LinkedList简介 LinkedList是用链表实现的List,是一个双向链表。LinkedList和A...

  • LinkedList简介

    LinkedList简介 LinkedList基于双向链表实现 LinkedList相对于Arraylist来说,...

  • LinkedList

    链表 LinkedList是基于链表结构的一种List,在分析LinkedList源码前有必要对链表结构进行说明。...

  • JAVA 集合之 LinkedList 底层实现和原理

    JAVA 集合之 LinkedList 底层实现和原理 概述 LinkedList底层是基于双向链表(双向链表的特...

  • LinkedList实现原理(JDK1.8)

    LinkedList实现原理(JDK1.8) LinkedList底层采用双向链表,如果对链表这种结构比较熟悉的话...

  • 02-14:leetcode重刷8之哈希与数组

    链表: 判断链表是否环形、是否回文 1、是否链表 #Definitionforsingly-linkedlist....

  • LinkedList必懂知识点

    Linkedlist 概述 Linkedlist集合 底层试下你的数据结构是双向链表(hashmap中的链表结构是...

  • LinkedList源码初探

    准备: LinkedList是基于链表(双向循环链表)结构的一种List,在分析LinkedList源码之前我们先...

  • LinkedList源码解析

    LinkedList简介 LinkedList是基于双向循环链表(从源码中可以很容易看出)实现的,除了可以当作链表...

  • LinkedList用法总结

    LinkedList用法总结 双链表可以从头部或尾部双向遍历。 构造函数 LinkedList():创建一个空链表...

网友评论

      本文标题:链表 - LinkedList

      本文链接:https://www.haomeiwen.com/subject/wkuhrqtx.html