题解 | #从单向链表中删除指定值的节点#
从单向链表中删除指定值的节点
https://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f
const rl = require("readline").createInterface({ input: process.stdin });
rl.on('line', function(line) {
let tempArr = line.split(' ')
let nodeNum = tempArr[0]
let firstNode = tempArr[1]
let delNode = tempArr[tempArr.length-1]
let arr = tempArr.slice(2, tempArr.length-1)
// console.log(arr)
let resArr = []
resArr.push(firstNode)
for(let i=0;i<arr.length;i+=2) {
let a = arr[i]
let b = arr[i+1]
let index = resArr.indexOf(b)
resArr.splice(index+1, 0, a)
// console.log(a, b, index, resArr)
}
resArr.splice(resArr.indexOf(delNode), 1)
console.log(resArr.join(' '))
})
此题关键是通过indexOf进行节点查找,并通过splice进行节点的插入