Java链表(Linked List)基本原理与实现方法入门示例
作者:WFaceBoss 时间:2021-10-12 05:49:14
本文实例讲述了Java链表(Linked List)基本原理与实现方法。分享给大家供大家参考,具体如下:
在分析链表之前,我们先来对之前的动态数组、栈、队列总结一下:
(1)底层依托于静态数组
(2)依靠resize解决固定容量问题
(3)是一种假的的动态数据结构
1.什么是链表
可以从以下两个部分来理解什么是链表
(1)最简单的动态数据结构,是一种真正的动态数据结构;
(2)是一种数据的存储方式,数据存储在"节点"(Node)中
1.1结构基本代码:
class Node{
E e;
Node next;
}
1.2 图示如下:
1.3 优点、缺点
优点:真正的动态,不需要处理固定容量的问题
缺点:丧失了随机访问的能力,也就是不能通过索引进行访问,只能next来进行查找
1.4数组与链表的对比
1.5 基本的链表节点结构代码:
新建一个package(LinkedList),然后新建一个类LinkedList,在该类中封装一个私有的节点,便于后续对于节点的使用。
package LinkedList;
public class LinkedList<E> {
//将Node节点设计成私有的类中类
private class Node<E> {
public E e;
public Node next;
//两个参数的构造函数
public Node(E e, Node next) {
this.e = e;
this.next = next;
}
//一个参数的构造函数
public Node(E e) {
this.e = e;
this.next = null;
}
//无参构造函数
public Node() {
this(null, null);
}
@Override
public String toString() {
return e.toString();
}
}
}
在本小节中先是简单了解了一下理论知识,然后把基本的链表节点结构使用代码来实现,下一小节我们继续来学习如何如何在链表中添加元素。
希望本文所述对大家java程序设计有所帮助。
来源:https://www.cnblogs.com/wfaceboss/p/10631649.html
标签:Java,链表,Linked,List
0
投稿
猜你喜欢
Java接口中尽量避免使用数组
2022-07-06 23:24:14
Reactor 多任务并发执行且结果按顺序返回第一个
2021-08-15 03:32:46
Android App实现应用内部自动更新的最基本方法示例
2022-11-02 02:49:46
Spring Cloud 覆写远端的配置属性实例详解
2022-09-10 22:06:23
Seata AT模式如何实现行锁详解
2022-11-18 23:43:34
详解Android封装一个全局的BaseActivity
2022-09-16 07:05:23
Java cookie和session会话技术介绍
2021-12-30 06:51:22
Java使用synchronized实现互斥锁功能示例
2022-10-20 00:47:49
SpringBoot @ConfigurationProperties注解的简单使用
2021-09-03 12:21:57
Android中ContextMenu用法实例
2023-02-12 20:09:49
Android利用SAX对XML进行增删改查操作详解
2023-02-05 00:03:32
C#嵌套类的访问方法
2021-07-26 18:03:20
Springboot+SpringSecurity+JWT实现用户登录和权限认证示例
2021-11-14 11:06:11
SpringBoot异步调用方法并接收返回值
2023-08-16 22:33:49
c# 以二进制读取文本文件
2023-02-28 15:23:26
C#设置输入法实例分析
2022-07-07 14:30:05
Android身份证号有效性校验工具类案例
2022-02-02 21:07:01
java 读写文件[多种方法]
2022-10-04 09:09:00
c#预处理指令分析
2021-07-23 10:35:00
详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)
2022-09-20 04:41:04