里面ListNode应该理解成链表还是节点?
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
// 添加新的结点
public void add(int newval) {
ListNode newNode = new ListNode(newval);
if (this.next == null)
this.next = newNode;
else
this.next.add(newval);
}
// 打印链表
public void print() {
System.out.print(this.val);
if (this.next != null) {
System.out.print("-->");
this.next.print();
} else {
System.out.println();
}
}
}
ListNode 代表的是链表中的节点。
类中有两个属性:val 和 next;其中val代表的就是这个节点中存的值,next代表的就是这个节点的下一个节点是什么。
在这种情况下,遍历一个个节点的next,就组成了一个完整的链表。
add()方法就是给属性next赋值的。
回复不易,如果我的回复对你有所帮助的话,请记得采纳哦~
ListNode是一个节点类,这个类里面有个成员变量是他自己,其实就是递归调用,所以就成为了链表;
.Next你保存的就是下一个节点的地址呀,当然能指向下一个节点嘛