• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

数据结构笔记总结(3.1)什么是链表

极客笔记 Geekerstar 12个月前 (05-10) 365次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

线性数据结构

前面我们学习的其实都是静态数组

链表,和其他数据结构都不同,它是一种真正的动态数据结构。

为什么链表很重要

  • 是数据结构学习的重点,也是难点
  • 最简单的动态数据结构
  • 更深入的理解引用(或者指针)
  • 更深入的理解递归
  • 辅助组成其他数据结构

链表 Linked List

数据存储在“节点”(Node)中,通常包含了两部分内容,一部分是存储我们真正的数据,另外一部分指向下一节点。

  • 优点:真正的动态,不需要处理固定容量的问题
  • 缺点:丧失了随机访问的能力

数组和链表的对比

数组

  • 数组最好用于索引有语意的情况。scores[2]
  • 最大的优点:支持快速查询

链表

  • 链表不适合用于索引有语意的情况
  • 最大的优点:动态

代码演示

接下来简单创建一下链表,新建一个类实现链表这种数据结构

public class LinkedList<E> {

    private class Node{
        public E e;
        public Node next;

        public Node(E e, Node next){
            this.e = e;
            this.next = next;
        }

        public Node(E e){
            this(e, null);
        }

        public Node(){
            this(null, null);
        }

        @Override
        public String toString(){
            return e.toString();
        }
    }

}

源码下载

下载地址

导航目录

查看导航
丨极客文库, 版权所有丨如未注明 , 均为原创丨
本网站采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行授权
转载请注明原文链接:数据结构笔记总结(3.1)什么是链表
喜欢 (0)
[247507792@qq.com]
分享 (0)
Geekerstar
关于作者:
本站技术支持

您必须 登录 才能发表评论!

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00