【发布时间】:2021-03-23 15:06:00
【问题描述】:
早上好,我正在学习,我想用递归函数制作一个链表,我一直在寻找示例,但我只找到了 Java 或其他类型的示例。 从我所看到的情况来看,我想它会是这样的,但我无法让它工作。如果有人可以帮助我,我将不胜感激。 谢谢。
function ListRecurse () {
this.head = null;
this.size = 0;
}
function Node () {
this.data = data;
this.next = next;
}
ListRecurse.prototype.add = function (data) {
let NewNode = new Node(this.add(data), null)
if (this.head === null) {
this.head = NewNode;
}
else {
let current = this.head;
while (current.next) {
current = current.next;
}
current = NewNode
}
this.size ++;
}
【问题讨论】:
-
在您的
Node构造函数中,您使用的是data和next变量,但这些变量在任何地方都没有定义。您需要使用函数参数。另外,你的add方法做的第一件事就是再次调用add,它将是无限的 -
你有没有一个递归函数调用的例子和它想要的结果与多个节点?
标签: javascript recursion linked-list