LinkedList底层原理实现

LinkedList底层原理实现
1.底层
1.LinkedList的底层是通过链表来实现的。
2.链表的单元
链表的单元是节点(Node)
链表是由多个节点构成,每个节点都包含三个部分,头部指向上一个节点,中部指向该节点,尾部指向下一个节点
双向链表:
在这里插入图片描述

2.优缺点
缺点:添加慢,因为需要遍历找到到最后一个指向为null的节点
优点:插入和删除快 因为可以直接改变下一个节点的指向

3.源码实现(单链)
package test2;

//节点类
public class Node {

// 数据值
private Object obj;
// 下一个节点的内存地址
private Node nextnode;

public Node getNextnode() {
	return nextnode;
}

public void setNextnode(Node nextnode) {
	this.nextnode = nextnode;
}

public Object getObj() {
	return obj;
}

// 无参构造
public Node() {
	super();
}

// 有参构造
public Node(Object obj) {

	this.obj = obj;
}

@Override
public String toString() {
	return "Node [obj=" + obj + ", next=" + nextnode + "]";
}
<
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值