什么是链表
是一种线性表,但不按线性顺序存储数据
链表对于数组最大的好处:它可以将数据分散存储在内存中,达到内存最大利用率
单向链表
节点
链表中的每个元素我们称为节点。节点由两部分组成
节点内容
下一个节点地址
最后一个节点存储地址的部分值。单向链表只能一个方向遍历。插入只能在链表头插入,只需将当前插入的节点设为头节点,next指向原头节点即可。删除只需将删除节点的上一个节点指向下一个节点即可
代码实现
public class singlelinkedList{
private int size;//链表节点个数
private Node head;//链表节点个数
public SingleLinkedList(){
size =0;
head=null;
}
//链表的每个节点类
private class Node{
private Object data;//每个节点的数据
private Node next;//每个节点指向下一个节点的连接
public Node(Object data){
this.data=data;
}
}
//添加元素
public Object addHead(Object obj){
Node newHead=new Node(obj);
if(size=0){
head=newHead;
}else{
newHead.next=head;
head=newHead;
}
size++;
return obj;
}
//删除元素
public Object deleteHead{
Obiect obj=head.data;
head=head.next;
size--;
return obj;
}
链表是一种线性数据结构,不同于数组,它不按线性顺序存储数据,而是允许在内存中分散存储。单向链表的节点包含数据和指向下一个节点的引用,仅支持单向遍历。插入操作通常在链表头部进行,删除操作则移除头部节点。提供的Java代码示例展示了如何创建和操作单向链表。
22万+

被折叠的 条评论
为什么被折叠?



