单向链表节点的数据结构
class Node {
//当前节点的后继节点
Node next = null;
//当前节点的值
int data;
//有参构造
public Node(int data){
this.data = data;
}
}
单链表的增删操作
//链表头的引用
Node head = null;
/**
* 向链表中插入数据
* @param d:插入数据的内容
*/
public void addNode(int d){
//实列化节点对象
Node newNode = new Node(d);
//若表头为空,则将值赋给表头
if (head == null){
head = newNode;
return;
}
//找到链表的最后一个节点,使最后一个节点指向新节点
Node tempNode = head;
while (tempNode.next != null){
tempNode = tempNode.next;
}
tempNode.next = newNode;
}
/**
* 输出链表每个节点的值
*/
public void printList(){
Node tempNode = head;
//从前往后输出链表每个节点的值
while (tempNode != null){
System.out.println(tempNode.data);
tempNode = tempNode.next;
}
}