Java实现单链表(头插法和尾插法)
Posted 我永远信仰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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;
}
}
}
以上是关于Java实现单链表(头插法和尾插法)的主要内容,如果未能解决你的问题,请参考以下文章