Java实现单链表(头插法和尾插法)
作者:互联网
手写单链表
定义一个ListNode类
public class ListNode {
public int val;
public ListNode next;
public ListNode() {
}
public ListNode(int val) {
this.val = val;
}
public ListNode(int val, ListNode next) {
this.val = val;
this.next = next;
}
}
用用头插法和尾插法完成链表的初始化
头插法实现相对比较简单
尾插法实现因为head不能变,所以需要一个辅助节点tem;
画图会比较容易理解。
import leetcode.dataType.ListNode;
public class LeetCode_206 {
public static void main(String[] args) {
ListNode head;
ListNode tem;//辅助节点
tem=head=null;
int n = 5;
//初始化链表
while (n >= 0) {
ListNode node = new ListNode(n);//new并初始化一个节点
//头插法插入该节点
/*node.next = head;
head = node;*/
//尾插法
if (head == null) { //如果是第一次插入
head = tem = node;
} else {
tem.next=node;
tem=node;
}
n--;
}
while (head != null) {
System.out.println(head.val);
head = head.next;
}
}
}
标签:插法,head,单链,ListNode,val,next,Java,public 来源: https://blog.csdn.net/qq_44769557/article/details/118094855