gpt4 book ai didi

javascript - 在第 n 个位置插入元素

转载 作者:行者123 更新时间:2023-12-03 05:41:40 25 4
gpt4 key购买 nike

我正在 JavaScript 中实现一个链表,并尝试在链表中的第 n 个位置插入一个元素。我能够插入一个元素;然而,列表的其余部分被切断。例如,如果我有一个像 a b f m 的列表,并在位置 2 处插入 c,如果我插入并打印,我的列表是 a b cf m 被切断。

这是我的功能:

List.prototype.insertNth = function(index, data){
this.head = this.head.insert(this.head, index, data)
}

Node.prototype.insert = function(head, index, data){
if(index===0){
var node = new Node(data, head)
return node
}
head.next = this.insert(head.next, index-1, data)
return head
}

我正在像这样list.insertNth(2, "c")调用insertNth。为什么插入新节点后链表的剩余部分被切断?

最佳答案

当前插入节点的下一个next必须设置为当前第N个节点。这是通过添加来完成的

node.next = head

那么只有它会链接到以下节点

    List.prototype.insertNth = function(index, data){ 
this.head = this.head.insert(this.head, index, data) }
Node.prototype.insert = function(head, index, data){
if(index===0){
var node = new Node(data, head)
node.next = head
return node
}
head.next = this.insert(head.next, index-1, data)
return head }

关于javascript - 在第 n 个位置插入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40500211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com